【问题标题】:Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path $ - Retrofit [duplicate]预期 BEGIN_ARRAY 但在第 1 行第 2 列路径 $ 处为 BEGIN_OBJECT - 改造 [重复]
【发布时间】:2016-06-21 04:03:24
【问题描述】:

我知道这个问题已经被回答过多次。但我仍然无法弄清楚如何在我的代码中解决这个问题。

我正在使用foursquare 搜索API 来获取地点。

这是我的改造界面:

public static final String API_URL ="https://api.foursquare.com/v2/";

 public interface getNearPlace {

    @GET("venues/search")
    Call <List<FoursquareSearch.response.venues>> searchResults(@Query("ll") String ll,@Query("oauth_token") String oauth_token,@Query("v") String v);
}

public static getNearPlace create() {
    return new Retrofit.Builder()
            .baseUrl(API_URL)
            .addConverterFactory(GsonConverterFactory.create())
            .build()
            .create(FourSquareAPI.getNearPlace.class);
}
public class FoursquareSearch {

private response response;

public FoursquareSearch.response getResponse() {
    return response;
}

public class response {
    private List<venues> venues;
    public List<FoursquareSearch.response.venues> getVenues() {
        return venues;
    }
    public class venues {
        public String id;
        public String name;`
        public location location;
        public List<categories> categories;
        public Bitmap bitmap;
 }
}

我总是得到

预期为 BEGIN_ARRAY,但在第 1 行第 2 列路径 $ 处为 BEGIN_OBJECT

错误。

【问题讨论】:

  • 请添加崩溃日志。
  • 呼叫失败!预期为 BEGIN_ARRAY,但在第 1 行第 2 列路径 $ 处为 BEGIN_OBJECT - 我的改造调用总是失败

标签: java android json gson retrofit


【解决方案1】:

似乎响应应该在 JSONArray 中,而您得到的是 JSONObject。尝试调试响应并进行比较。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    相关资源
    最近更新 更多