我正在使用@FormUrlEncoded执行@POST操作,因为我点击的API需要HTTP参数作为输入。
目标API期望看到的参数应该看起来像(简化):
ALIST [0] [object1] = 1&安培; ALIST [0] [Object2的] = ASTRING&安培; ALIST [1] [object1] = 2及ALIST [2] [Object2的] = bstring
JsonIzed(为清晰起见)看起来像:
{
"alist": [
{
"object1" : "1",
"object2" : "astring"
},
{
"object1" : "2",
"object2" : "bstring"
}
]
}
基本上,alist [0] [object1]为1,alist [0] [object2]为" astring"。
我最接近的是使用@FieldMap:
...
@FieldMap Map<String,String> myFieldMap
...
我有这样的事情:
@FormUrlEncoded
@Post("/somewhere")
SearchHandle search(@FieldMap Map<String, String> myMap);
哪个让我:
{
"alist": {
"0" : {
"object1" : "1",
"object2" : "astring"
},
"1" : {
"object1" : "2",
"object2" : "bstring"
}
}
}
哪个很接近 - 但是API期待一个数组。所以我需要一个......究竟是什么?有什么想法吗?
答案 0 :(得分:0)
创建一个用于建模数据的类:
class model {
String object1;
int object2;
}
现在你的alist应该是一个模型对象数组,你可以使用Gson或jackson等从你的数组创建json对象。