Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何解析多范围请求-响应_Java_Android_Okhttp_Okhttp3 - Fatal编程技术网

Java 如何解析多范围请求-响应

Java 如何解析多范围请求-响应,java,android,okhttp,okhttp3,Java,Android,Okhttp,Okhttp3,我正在尝试发送一个包含多个范围的范围请求,如下所述:。问题是我无法正确解析响应。如何使用OkHttp解析这个问题?我可以按照这个答案中的描述来做。 我导入了以下库: 编译'com.sun.mail:android mail:1.5.5' 因此,我的代码如下所示: Request request = new Request.Builder() .url(url) .addHeader("range", String.format("bytes=%s", TextUt

我正在尝试发送一个包含多个范围的范围请求,如下所述:。问题是我无法正确解析响应。如何使用OkHttp解析这个问题?

我可以按照这个答案中的描述来做。 我导入了以下库:

编译'com.sun.mail:android mail:1.5.5'

因此,我的代码如下所示:

Request request = new Request.Builder()
        .url(url)
        .addHeader("range", String.format("bytes=%s", TextUtils.join(", ", ranges)))
        .build();
Response response = client.newCall(request).execute();
ByteArrayDataSource dataSource = new ByteArrayDataSource(response.body().byteStream(), response.body().contentType().toString());
MimeMultipart multipart = new MimeMultipart(dataSource);
int count = multipart.getCount();
for (int i = 0; i < count; i++) {
    BodyPart bodyPart = multipart.getBodyPart(i);
    if (bodyPart.isMimeType("application/octet-stream")) {
        processBinaryStream(bodyPart.getInputStream());
    } else {
        // Or process different types of data
        throw new Exception(String.format("Content type: %s cannot be parsed", bodyPart.getContentType()));
    }
}
Request-Request=newrequest.Builder()
.url(url)
.addHeader(“范围”,String.format(“字节=%s”,TextUtils.join(“,”,范围)))
.build();
Response=client.newCall(request.execute();
ByteArrayDataSource=新的ByteArrayDataSource(response.body().ByTestStream(),response.body().contentType().toString());
MimeMultipart multipart=新的MimeMultipart(数据源);
int count=multipart.getCount();
for(int i=0;i
我仍然不满意,不得不导入整个邮件处理库,只是为了管理多部分响应。但现在,问题已经解决了,直到我找到或想出更好的解决方案