[Java][RestAssured] 如何将应用程序/八位字节流响应保存为 jpg 图像?

问题描述 投票:0回答:1

我想使用 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文件。怎样才能保存呢?

java save rest-assured octetstring
1个回答
0
投票

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一无所知,所以也许框架提供了任何方法。

© www.soinside.com 2019 - 2024. All rights reserved.