Java 使用改型2 but时,预期BEGIN_对象但在第1行第1列路径处为字符串$
我使用改进版2从Flickr拍摄照片 我创建一个类来解析它:Java 使用改型2 but时,预期BEGIN_对象但在第1行第1列路径处为字符串$,java,android,json,retrofit2,Java,Android,Json,Retrofit2,我使用改进版2从Flickr拍摄照片 我创建一个类来解析它: public class FlickrResult { @SerializedName("photos") @Expose private FlickrPhotos photos; @SerializedName("stat") @Expose private String stat; public FlickrPhotos getPhotos() {
public class FlickrResult {
@SerializedName("photos")
@Expose
private FlickrPhotos photos;
@SerializedName("stat")
@Expose
private String stat;
public FlickrPhotos getPhotos() {
return photos;
}
public class FlickrPhotos {
@SerializedName("page")
@Expose
private int page;
@SerializedName("pages")
@Expose
private String pages;
@SerializedName("perpage")
@Expose
private int perpage;
@SerializedName("total")
@Expose
private String total;
@SerializedName("photo")
@Expose
private ArrayList<FlickrPhoto> photo;
public ArrayList<FlickrPhoto> getPhoto() {
return photo;
}
public class FlickrPhoto {
@SerializedName("id")
@Expose
private String id;
@SerializedName("owner")
@Expose
private String owner;
@SerializedName("secret")
@Expose
private String secret;
@SerializedName("server")
@Expose
private String server;
@SerializedName("farm")
@Expose
private int farm;
@SerializedName("title")
@Expose
private String title;
@SerializedName("ispublic")
@Expose
private int ispublic;
@SerializedName("isfriend")
@Expose
private int isfriend;
@SerializedName("isfamily")
@Expose
private int isfamily;
public String getTitle() {
return title;
}
}
}
}
改装接口
@GET("rest")
Call<FlickrResult> getPhotos(@Query("method") String method,
@Query("api_key") String key,
@Query("format") String format,
@Query ("nojsoncallbac") String nojsoncallbac
);
@GET(“rest”)
调用getPhotos(@Query(“method”)字符串方法,
@查询(“api_键”)字符串键,
@查询(“格式”)字符串格式,
@查询(“nojsoncallbac”)字符串nojsoncallbac
);
我的责任是成功,但问题在于解析。有例外:
java.lang.IllegalStateException:应为BEGIN_对象,但在第1行第1列路径处为字符串$
拜托,伙计们,我需要你们的帮助 Gson希望您的JSON字符串以对象大括号开头
{
但是,您传递给它的字符串可能以开放引号开头
""
Gson希望您的JSON字符串以对象开头的大括号开始
{
但是,您传递给它的字符串可能以开放引号开头
""
你的改装界面是错误的 参数“nojsoncallbac”不正确,应为“nojsoncallback” 此不正确的参数会导致API在响应中返回不同的格式
jsonFlickrApi({
"photos": {
"page": 1,
"pages": 10,
"perpage": 100,
"total": 1000,
"photo": [
...
]
}
})
你的改装界面是错误的 参数“nojsoncallbac”不正确,应为“nojsoncallback” 此不正确的参数会导致API在响应中返回不同的格式
jsonFlickrApi({
"photos": {
"page": 1,
"pages": 10,
"perpage": 100,
"total": 1000,
"photo": [
...
]
}
})
闪烁的api响应是什么?如果响应结构因响应代码而异,则可能存在问题。你的改型界面是什么?@Robert Estivill否我的回答与你的改型界面相同?@GET(“rest”)调用getPhotos(@Query(“method”)String方法、@Query(“api_key”)String键、@Query(“format”)字符串格式,@Query(“nojsoncallbac”)字符串nojsoncallbac);可能不相关,但是FlickrPhotos.pages和FlickrPhotos.total都是整数而不是字符串闪烁的api响应是什么?如果响应结构因响应代码而异,则可能存在问题。你的改型界面是什么?@Robert Estivill否我的回答与你的改型界面相同?@GET(“rest”)调用getPhotos(@Query(“method”)String方法、@Query(“api_key”)String键、@Query(“format”)字符串格式,@Query(“nojsoncallbac”)字符串nojsoncallbac);可能不相关,但FlickrPhotos.pages和FlickrPhotos.total都是整数而不是字符串