2 回答

TA贡献1880条经验 获得超4个赞
假设您有以下地图要将此数据发送到改造请求正文
HashMap<String, String> map = new HashMap<>();
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
map.put("key4", "value4");
以下是 URL 请求方法:
@FormUrlEncoded
@POST("/yourapiname")
Call<ResponseObj> methodName(@FieldMap HashMap<String, String> yourHasMapObject);
如果要添加文件和哈希图,请使用以下方法:
@Multipart
@POST("yourapiname")
Call<ResponseObj> methodName(@HeaderMap HashMap<String, String> yourHasMapObject, @Part MultipartBody.Part file);

TA贡献1871条经验 获得超13个赞
您应该以传递第一张地图的相同方式传递另一张地图。
首先,将第二张地图的值从Stringto转换RequestBody,然后您的请求应如下所示:
@Multipart
@POST("https://8hoot.com/my-path")
Single<Response<UploadMediaResponseModel>> uploadMedia(
@PartMap Map<String, RequestBody> metadata,
@PartMap Map<String, RequestBody> anotherMetaData,
@Part MultipartBody.Part filePart
);
添加回答
举报