我想在我的android项目的retrofit get方法中传递多个参数运行时间。以下是我的网址
http://myservice.com/home/MobileAPI/MobAPI.svc/LoginCriteria/26/address/1/permenant
我在这里使用基本网址:http://myservice.com/home/MobileAPI/MobAPI.svc
我想通过'地址'和' permenant'在我的GET方法中运行时使用Retrofit。
我正在尝试:
@GET("LoginCriteria/26/{address}/1/{permenant}")
void getDetails(@Path("address") String address,@Path("permenant") String permenant, Callback<AddressParser> parserCallback);
这是我的JSON回复:
{
"response": {
"type": "success",
"data": {
"datalist": {
"total": "20",
"user": [
{
"empcode": "",
"companycode": "",
"companyname": ""
},
{
"empcode": "",
"companycode": "",
"companyname": ""
}
]
}
}
}
}
我得到以下的执行:
内部失败com.fasterxml.jackson.databind.JsonMappingException: 无法反序列化java.util.ArrayList的实例 START_OBJECT令牌。
如果我只在运行时传递一个参数,它就可以工作。它不适用于多个@Path参数。任何建议将不胜感激。
答案 0 :(得分:0)
我猜这个问题与您的路径参数无关。 我确信它与您的请求的响应有某种关系。
启用登录改造并检查被叫URL和给定的响应。
例外情况说杰克逊无法解析您的请求的回复。