首先,这不是一个重复的问题,因为我已经厌倦了在stackoverflow上找到的所有方法。我正在尝试使用Retrofit
库将多个(动态更改数字)图像上传到服务器。目前我正在同时发送两张图像
ApiUtil.GetRestApi().UploadImages(
new TypedString(userName),
new TypedFile("image/jpg", files[0]),
new TypedFile("image/jpg", files[1]), this);
我的Rest Api
看起来像这样
@Multipart
@POST("/image/upload-media/")
void UploadImages(@Part("username") TypedString userName,
@Part("media") TypedFile media1,
@Part("media") TypedFile media2,
Callback<MediaUploadResponse> response);
这完全没问题但我不能继续这个,因为无法修复图像数量。我在stackoverflow上找到了很多线程,但我无法解决这个问题。 对此有何解决方案?
答案 0 :(得分:0)
使用改造@PartMap。 API将如下所示:
@Multipart
@POST("/image/upload-media/")
void UploadImages(Map<String,TypedFile> files,
Callback<MediaUploadResponse> response);
然后使用:
创建零件图Map<String, TypedFile> files = new HashMap<String, TypedFile>();
files.put("media1", new TypedFile("image/jpg", files(0)));
files.put("media2", new TypedFile("image/jpg", files(1)));