java我无法通过Kitsu Api获得动画列表
我得到这个错误:com。谷歌。格森。JsonSyntaxException:java。lang.IllegalStateException:应为BEGIN_对象,但在第1行第10列路径$处为BEGIN_数组。数据
https://kitsu.io/api/edge/anime
RetroService RetroService=RetroInstance。GetReformation()。创建(RetroService.class)
public void makeApiCall() {
Call<Animes> call = retroService.getAnimes();
call.enqueue(new Callback<Animes>() {
@Override
public void onResponse(Call<Animes> call, Response<Animes> response) {
Log.d("Result", response.body().getData().getAttributes().getCanonicalTitle());
}
@Override
public void onFailure(Call<Animes> call, Throwable t) {
}
});
}
@GET(“动画”)
```Call<Animes> getAnimes(); ```
我的POJO课程:
@Expose
private Data data;
/**
* No args constructor for use in serialization
*
*/
public Animes() {
}
/**
*
* @param data
*/
public Animes(Data data) {
super();
this.data = data;
}
public Data getData() {
return data;
}
public void setData(Data data) {
this.data = data;
}
public class Data {
@SerializedName("id")
@Expose
private String id;
@SerializedName("type")
@Expose
private String type;
@SerializedName("attributes")
@Expose
private Attributes attributes;
//With getter and setters and constructor
public class Attributes {
@SerializedName("synopsis")
@Expose
private String synopsis;
@SerializedName("canonicalTitle")
@Expose
private String canonicalTitle;
@SerializedName("startDate")
@Expose
private String startDate;
@SerializedName("endDate")
@Expose
private String endDate;
@SerializedName("ratingRank")
@Expose
private Integer ratingRank;
@SerializedName("status")
@Expose
private String status;
@SerializedName("episodeCount")
@Expose
private Integer episodeCount;
@SerializedName("youtubeVideoId")
@Expose
private String youtubeVideoId;
//With getter and setters and constructor
# 1 楼答案
基本上
Expected BEGIN_OBJECT but was BEGIN_ARRAY
意味着您试图解析单个对象(Animes
),虽然JSON中没有单个对象,但它是一个数组(根)我不知道你的
RetroInstance
和RetroService
是如何工作的,但是:应该是