Я хочу загрузить список файлов (изображений в моем случае) с сервера JBoss на Android. Я делаю так в коде ниже:Как читать многостраничный ответ, отправленный из resteasy в android, используя okHttp?
@GET
@Path("/report/{filename}")
@Produces({MediaType.MULTIPART_FORM_DATA})
public MultipartFormDataOutput getReport(@PathParam("filename") String filename, @Context HttpServletRequest request) {
try {
String token = request.getHeader("Authorization");
List<File> file = processImage.getImage(filename,token);
MultipartFormDataOutput output = new MultipartFormDataOutput();
for(File image: file){
System.out.println("class of this" +image + "MMMM" +image.exists());
output.addPart(image, new MediaType("image","jpg"));
}
return output;
} .....
.......
}
На Android стороны я хочу прочитать ответ (файлы в многочастной форме). Я использую okHttp, чтобы установить соединение. Ищите много в Интернете. Я попробовал приведенный ниже код, чтобы прочитать ответ на множественный ответ, но он не работает. Кажется, что ничего не читает из потока.
ByteArrayDataSource ds = new ByteArrayDataSource(response.body().byteStream(), "multipart/form-data");
MimeMultipart multipart = new MimeMultipart(ds);
BodyPart jsonPart = multipart.getBodyPart(0);
System.out.println("Response body = " + jsonPart.getInputStream());
File reportFile = new File(Environment.getExternalStorageDirectory() + File.separator + "downloadedFile.jpg");
InputStream is = jsonPart.getInputStream();
FileOutputStream fileOutputStream = null;
try {
fileOutputStream = new FileOutputStream(reportFile);
byte[] buffer = new byte[MEGABYTE];
int bufferLength = 0;
while ((bufferLength = is.read(buffer)) > 0) {
fileOutputStream.write(buffer, 0, bufferLength);
}
is.close();
fileOutputStream.close();
.......
}
Может кто-нибудь, пожалуйста, помогите мне решить это. Я застрял здесь от 2 дней. Что я делаю не так .
Вы можете показать это линейный выход System.out.println ("тело Response =" + jsonPart.getInputStream()); –
http://www.coderzheaven.com/2011/08/16/how-to-upload-multiple-files-in-one-request-along-with-other-string-parameters-in-android/ или http: //stackoverflow.com/questions/32984323/upload-multiple-image-file-using-httpurlconnection –
попробуйте этот http://stackoverflow.com/questions/35622676/image-upload-using-okhttp/35622812#35622812 –