java.lang.IllegalStateException:预期BEGIN_ARRAY但在第1行第2列是BEGIN_OBJECT
我正在使用Retro Fit
在线连接到API。 但我在尝试解析返回的数据时遇到此错误。
retrofit.RetrofitError: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2
返回的数据采用此格式,数据模型如下:
iGPlaceApi.getStreams(ITEMS_PER_PAGE, pageNumber * ITEMS_PER_PAGE, new Callback<List>() { @Override public void success(List mGp, Response response) { int n = mGp.size(); Object asa = mGp.toArray(); } @Override public void failure(RetrofitError retrofitError) { String error = retrofitError.toString(); } }); public class mGooglePlacesApiResponse { public String html_attributions; //public List html_attributions; public String next_page_token; public List results; } public class place { public Geometry geometry; public String icon; public String id; public String name; public OpeningHours opening_hours; public List photo ...
将List
更改为mGooglePlacesApiResponse mGp
。 您的JSON包含对象而不是列表。
@编辑
顺便说一句,html_attributions是一个数组
@ EDIT2
好吧,我看到你纠正了你的html_attrubutions