我正试图使用okHTTP多部分上传图像到服务器,但服务器不接受我的请求。我的问题是我无法在日志拦截器中看到我的多部分的部分,因此我无法进行调试。这是我使用的代码、结果日志和所需的有效载荷。非常感谢任何帮助。
RequestBody requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("uploaded_file", filename, RequestBody.create(MEDIA_TYPE_PNG, sourceFile))
.addFormDataPart("flowChunkNumber", "1")
.addFormDataPart("flowCurrentChunkSize", String.valueOf(sourceFile.getTotalSpace()))
.addFormDataPart("flowChunkSize", "1048576")
.addFormDataPart("flowIdentifier", "4731-images1jpeg")
.addFormDataPart("flowFilename", "images (1).jpeg")
.addFormDataPart("flowFilename", "images (1).jpeg")
.addFormDataPart("flowRelativePath", "images (1).jpeg")
.addFormDataPart("flowTotalChunks", "1")
.build();
Request request = new Request.Builder()
.addHeader("cookie", ******* )
.url(URL_UPLOAD_IMAGE)
.post(requestBody)
.build();
HttpLoggingInterceptor logInterceptor = new HttpLoggingInterceptor();
logInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient client = new OkHttpClient
.Builder()
.addNetworkInterceptor(logInterceptor)
.build();
Response response = client.newCall(request).execute();
这是我使用拦截器时在日志中看到的内容。
D/OkHttp: --> POST https://www.appido.ir/api/profile/avatar http/1.1
D/OkHttp: Content-Type: multipart/form-data; boundary=a8028055-3a30-4942-916b-af56935e8b32
D/OkHttp: Content-Length: 14097 D/OkHttp: cookie: ************************
Domain=.appido.ir; expires=Tue, 23-Aug-2016 13:31:11 GMT; Path=/D/OkHttp: Host: www.appido.ir
D/OkHttp: Connection: Keep-Alive
D/OkHttp: Accept-Encoding: gzip
D/OkHttp: User-Agent: okhttp/3.4.1
D/OkHttp: h������gTRC���������lumi���� 07-25 07:47:49.163 7776-8509/com.androidbuts.uploadimage D/OkHttp: |������meas���� 07-25 07:47:49.163 7776-8509/com.androidbuts.uploadimage D/OkHttp: �������$bkpt���� 07-25 07:47:49.163 7776-8509/com.androidbuts.uploadimage D/OkHttp: �������rXYZ����
接下来是一堆看不懂的字符
D/OkHttp: --> END POST (14097-byte body)
如何查看有意义的日志?我想要这样:
------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowChunkNumber"
1 ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowChunkSize"
1048576 ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowCurrentChunkSize"
23016 ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowTotalSize"
23016 ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowIdentifier"
23016-60x60music2_smalljpg ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowFilename"
60x60music2_small.jpg ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowRelativePath"
60x60music2_small.jpg ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="flowTotalChunks"
1 ------WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: form-data; name="file"; filename="blob" Content-Type: application/octet-stream
------WebKitFormBoundaryJDdhM3Si8enJZABA--