android - Android OkHTTP Multipart - 正文是空的服务器端
问题描述
我正在尝试将多部分数据 ( image & JSON
) 发送到我的服务器,但是当我尝试使用okHttp
多部分正文时,服务器上的请求正文始终为空,在这种情况下我会期待
{fieldname: "some field name" }
超级坚持这一点,所以任何帮助将不胜感激。我可以用 RequestBody 做一个正常的身体,效果很好,一个只有一个图像的多部分正文,它只是一个多部分中的双重 JSON 和图像似乎没有通过 json 正文发送。
注意:我已经尝试过此操作,但未将图像/文件包含为表单数据部分,以查看 field_name 现在是否会显示在 req 正文服务器端,但这也不起作用。
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());
解决方案
删除setType(MultipartBody.FORM)
并查看是否有效。
推荐阅读
- css - Google Tag Manager link click image
- sql - Return string in a array without object
- ionic-framework - sharing data between two tabs in ionic react
- html - 无法使用标签下载文件
- reactjs - 如何在 React Native 中在后台设置多个图像
- redis - 当 RDBMS 也有自己的缓存时,为什么 Redis 用作 RDBMS 缓存?
- python - 在不同类的另一个方法中调用方法
- javascript - 我想要 Chatterbot 的回复列表?
- power-automate - 我可以使用 Power Automate Desktop 或 Power Automate Cloud (Flow) 从 Google Drive 中的 Google Sheet 获取行吗?
- typescript - 如何创建通用函数以从接口转换为实现类