如何使用相同的键但使用不同的索引发送经过改进的字符串数组或字符串列表?

时间:2018-07-18 20:54:54

标签: android retrofit retrofit2

我有一个api可以接受具有相同键但索引不同的多个值,例如 phone_no [0] =“ 1234” phone_no [1] =“ 5678”

我需要发送包含电话号码的数组或字符串列表。我尝试使用

@FormUrlEncoded
@POST("get_user_by_phone.php")
Call<PojoGetFriendsListResponse> getUserFromPhone(@Field("phone_no") ArrayList<String> phone_no);

但它会生成如下的请求正文

phone_no=%2B1234&phone_no=%2B5678

有什么方法可以生成这样的requestbody吗?

phone_no[0]=%2B1234&phone_no[1]=%2B5678

1 个答案:

答案 0 :(得分:1)

尝试一下:

HashMap<String, String> phoneNumbers= new HashMap<>();
 phoneNumbers.put("phone_no[0]", "99912443432");
 phoneNumbers.put("phone_no[1]", "99912443433");
 phoneNumbers.put("phone_no[2]", "99912443434");

@FormUrlEncoded
@POST("get_user_by_phone.php")
Call<PojoGetFriendsListResponse> getUserFromPhone(@FieldMap HashMap<String, String> phoneNumbers);