2017-11-23 16 views
0

RestAssured를 사용하여 웹 사이트에서 이미지를 다운로드하고 싶습니다. 내 코드 :[Java] [RestAssured] 응용 프로그램/옥텟 스트림 응답을 jpg 이미지로 저장하는 방법은 무엇입니까?

Response response = given() 
      .log().all() 
      .cookie(cookie) 
      .get(format(image_endpoint, "46581657")); 

엔드 포인트는 "응용 프로그램/octet-stream을"유형의 상태 코드 (200)와 이미지를 반환합니다. jpg 파일로 저장하려면 어떻게해야합니까?

String bin = getImageResponse() 
      .prettyPrint(); 
    saveFile("foto.jpg", bin); //this method only save string to file 

을하지만 열 수 없습니다 JPG 파일 수 :

나는 노력했다. 어떻게 저장할 수 있습니까?

답변

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에 대해 아무것도 몰라.