我想使用 RestAssured 从网站下载图像。我的代码:
Response response = given()
.log().all()
.cookie(cookie)
.get(format(image_endpoint, "46581657"));
Endpoint 返回状态代码 200 和“application/octet-stream”类型的图像。如何将其另存为jpg文件?
我已经尝试过:
String bin = getImageResponse()
.prettyPrint();
saveFile("foto.jpg", bin); //this method only save string to file
但是我无法打开jpg文件。怎样才能保存呢?
MIME 类型 application/octet-stream 由以 Base64 编码的字节组成。使用 Base64 类进行解码。
private void saveFile(String path, String octetStream) throws IOException{
byte[] bytes = Base64.getDecoder().decode(octetStream);
try(FileOutputStream fos = new FileOutputStream(path)){
fos.write(bytes);
}
}
我对RestAssured一无所知,所以也许框架提供了任何方法。