我需要使用retrofit2在GET请求的主体中发送类型为User[]
的数组。这是最后的有效载荷必须是什么样子:Retrofit2 - 在GET请求中发送类型T的数组
body: {
"data_id": 1,
"data_provider": "string_value",
"users": [
{
user_id: 1,
name: 'name'
},
{
user_id: 1,
name: 'name'
},
...
]
}
当前API的实现看起来像这样:
@GET("api/users/submit.json")
Call<UserData> submitData(@Query("data_id") int data_id, @Query("data_provider") String data_provider, @Query("users[]") User[] users);
的ArrayList代码:
//Converting the ArrayList<User> usersList to an array
User[] userArray = usersList.toArray(new User[0]);
//The userArray is passed to the retrofit API along with the other request values (data_id, data_provider)
在登录的改装要求,data_id
和data_provider
正确发送除了f或用户数组。用户阵列看起来像这样:
API /用户/ submit.json data_id = 1个& data_provider =测试&用户[] = [email protected]
如何能我在GET请求正文中发送User
类型的数组?
尝试将用户[]转换为JSON数组,然后将请求发送到服务器。 –
JSONArray userArray = new JSONArray(userArray); –
@RakshitNawani这需要min API 19. Mine是16.我不想把它提高到19 – Dinuka