无法使用相同的密钥发送带有参数的改装2.0多部分请求

时间:2015-12-09 09:11:16

标签: android retrofit

我需要使用带有图片和一些键值参数的改装2.0发送多部分请求:"key1" - "parameter1""key2" - "parameter2"等。但是存在具有相同键的参数:"somepar[]" - "text1""somepar[]" - "text2" ...我不能在这个结构中使用@PartMap

@Multipart
@POST(myUrlPart)
Call<ClassEntity> myRequest(@Header("Authorization") String authHeader,
                                @Part("image\"; filename=\"image.png\"") RequestBody image,
                                @PartMap Map<String, RequestBody> params); 

因为Map&lt;&gt;无法使用相同的密钥存储多个值。 我无法使用

@Part("somepar[]") List<String> mylist  

@Part("somepar[]") String[] myArray  

因为它会发送键值"somepar[]" - "{"1","2","3"}",而不是"somepar[]" = "1""somepar[]" = "2""somepar[]" = "3"

请帮忙,如何提出这样的要求。

1 个答案:

答案 0 :(得分:1)

好的,这个问题在改造库的新版本中得到了解决(目前编写本文时的2.1.0版本)。此代码将正常工作并正确发送数据:

func collectionView(collectionView: JSQMessagesCollectionView, attributedTextForCellTopLabelAtIndexPath indexPath: NSIndexPath) -> NSAttributedString? { 

感谢。