我是JSON解析方面的新手,并试图解析以下JSON:
[
{
"id" : 1,
"title" : {
"rendered": "a link"
},
"categories": [ 4,9,11 ],
"links":{
"featuredmedia":[
{
"href": link
}
]
}
},
...
]
public interface MediaAPI {
@GET("Media")
Call<LinkList> getDetails();
}
public class LinkList {
private List<Links> links;
// getter and setter
}
public class Links {
private List<Featuredmedia> Featured = new ArrayList<Featuredmedia>();
// getter and setter
}
public class Featuredmedia {
private String href;
// getter and setter
}
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(ROOT_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
MediaAPI service = retrofit.create(MediaAPI.class);
Call<LinkList> call = service.getDetails();
call.enqueue(new Callback<LinkList>() {
@Override
public void onResponse(Call<LinkList> call, Response<LinkList> response) {
if(response.isSuccessful()){
successToast();
}
else {
failToast();
}
}
@Override
public void onFailure(Call<LinkList> call, Throwable t) {
Log.d("Failed", t.getMessage());
showToast();
}
});
我只需要在“FeaturedMedia”中获得链接,所以我只包括了模型中的那些。我也从这里得到了一些关于错误的想法,但错误仍然存在。
任何关于如何解决这个问题的建议都会有很大的帮助。
更改links
模型,如下所示。
public class Links {
private List<Featuredmedia> featuredmedia = new ArrayList<Featuredmedia>();
// getter and setter
}
而且LinkList
应该如下所示。
public class LinkList {
private Links links;
// getter and setter
}
我已经读过许多关于同一错误的答案,但没有任何帮助。 提前道谢。
我不知道该修好它 我怎么了? 我的json是 E/DDD:onFailure:java.lang.IllegalStateException:应为BEGIN_ARRAY,但在第1行第44列路径$.data处为BEGIN_OBJECT 有什么问题?谢谢!
我正在尝试使用改版在我的应用程序上实现登录,但是我一直得到这个错误不确定是什么错误,java.lang.IllegalStateException:应该是BEGIN_OBJECT,但应该是BEGIN_ARRAY 这是邮递员的回复 和我的登录类
和请求模式模型 当我运行代码并从服务中请求时,我得到
有改装API 附注。很抱歉可能的语法错误。