Я пытаюсь отправить многокомпонентные данные (image & JSON
) на мой сервер, однако когда я пытаюсь использовать okHttp
составное тело, тело запроса на сервере всегда пусто, где в этом случае я бы ожидал {fieldname: "some field name" }
Супер застрял на этом, поэтому любая помощь будет принята с благодарностью.Я могу создать нормальное тело с RequestBody, и оно работает нормально, и, похоже, многочастное тело с одним изображением, просто двойное JSON и изображение в многочастном, не отправляет через тело json.
ПРИМЕЧАНИЕ:Я пробовал это без включения изображения / файла в качестве части данных формы, чтобы увидеть, будет ли поле field_name отображаться на стороне сервера тела запроса, но это тоже не сработало.
RequestBody multiPartForm = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("field_name", "some field name")
.addFormDataPart("image", "somefile.jpg", RequestBody.create(MEDIA_TYPE_JPG, new File(getPath(uri))))
.build();
String apiRoute = apiURL + '/' + route;
Request.Builder reqBuilder = new Request.Builder();
reqBuilder.header("x-access-token", APIToken);
Request.Builder builder = reqBuilder.url(apiRoute);
builder.post(multiPartForm);
return client.newCall(builder.build());