我的界面看起来是这样的:如何使用retrofit2.0获取JSONArray数据?
public interface newArtsApi {
@GET("art/get_all_arts?page=1")
Call<List<ArtsPagination>> getMovies(@Query("index") int index);}
另一个ServiceGenerator类看起来是这样的:
public class ServiceGenerator {
public static <S> S createService(Class<S> serviceClass) {
OkHttpClient httpClient=new OkHttpClient.Builder()
.connectTimeout(30, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS)
.build();
GsonBuilder gson = new GsonBuilder();
gson.registerTypeAdapter(String.class, new StringDesirializer());
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://...../clients/....../api/v1/")
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient).build();
return retrofit.create(serviceClass);
}
}
我想这种类型的使用改造2.0数据,jsonarry_data
但我解析这种类型的数据时出错。
得到错误这样的..从上面的预期BEGIN_ARRAY代码...响应错误但BEGIN_OBJECT位于第1行第2列路径$ – alias26
基本上错误是说你的JSON正在返回一个对象,你的API中你已经规定,它应该得到ArtsPagination的列表,您发布它返回一个单一对象JSONARRAY_DATA形象。 – Rafael
所以u能详细解释一下,我怎样才能得到它...在那里我做出改变..? – alias26