改进错误预计BEGIN_OBJECT但是BEGIN_ARRAY
我如何解析这个使用改造?我得到的错误BEGIN_OBJECT但BEGIN_ARRAY改进错误预计BEGIN_OBJECT但是BEGIN_ARRAY
现在,我解析它这样..
下面是适配器类
public static RetroInterface getCommonPathInterface() {
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint("myurl")
.build();
records= restAdapter.create(RetroInterface.class);
return records;
}
下面是接口,RetroInterface.class
@GET("/mypath")
void getValue(
Callback<MyBean> callback
);
这是我如何调用它的主要活动
getCommonPathInterface().getValue(new Callback<MyBean>() {
@Override
public void success(MyBean myBean, Response response) {
inti = 0;
}
@Override
public void failure(RetrofitError error) {
int i = 0;
}
});
下面是JSON响应
[
{
id: "111",
name: "Val1"
},
{
id: "222",
name: "Val2"
}
]
我是新来改造的,但我是有这个问题,当我处理一个多类POJO和使用专为单级POJO代码。让我知道如果是这样的话。另外,请粘贴一些代码! :)
我认为,它不是一个很好的答案,但肯定会是一个非常好的评论。 – 2015-04-04 08:43:18
右键嗨,现在你正在解析响应,如果它是格式如下:
{
"contacts":[
{
"id":"111",
"name":"Val1"
},
{
"id":"222",
"name":"Val2"
}
]
}
例外告诉你这一点,你是在根期待的对象,但真实的数据实际上是数组。这意味着您需要将类型更改为JSON对象。
谢谢。
Yippi!得到它的工作。很简单的解决方案我的回调方法发生了一些小改变。
而不是Callback<MyBean> callback
使用Callback<MyBean[]> callback
。问题解决了 ! :)
哇,这很简单,并不需要更换服务器。大!坦克Abhilash! – 2015-06-20 14:08:04
你现在怎么解析它? – Egor 2015-04-04 08:38:03
请分享您当前的json解析代码块。否则没有人可以帮助你。从错误消息来看,它非常清楚它需要一个JSON对象作为根对象,但是它获得了一个JSON数组作为根对象。 – 2015-04-04 08:41:46
看看:)。我编辑了代码 – Abhilash 2015-04-04 08:52:53