【发布时间】:2018-12-20 05:53:02
【问题描述】:
当我调用不受天气影响的 API 时
https://api.apixu.com/v1/forecast.json?key=8f71b99b716f4278b98103446181912&q=Paris
问题是
- 我的邮递员和使用 Call in Retrofit 我得到数据
- 使用 POJO 类时出现响应错误
错误 预期为 BEGIN_ARRAY,但在第 1 行第 2 列路径 $ 处为 BEGIN_OBJECT
Call<List<DetailsMain>> listCall = api.getDetailsByParameter("8f71b99b716f4278b98103446181912", "Paris");
listCall.enqueue(new Callback<List<DetailsMain>>() {
@Override
public void onResponse(Call<List<DetailsMain>> call, Response<List<DetailsMain>> response) {
DetailsMainList.setValue(response.body());
Log.d("data", "" + response.body());
}
@Override
public void onFailure(Call<List<DetailsMain>> call, Throwable t) {
Log.d("Error", "" + t.getMessage());
}
});
【问题讨论】:
-
请不要在公共平台或任何问答网站上分享您的 API 密钥。有人可能会滥用这些密钥。使用您从服务器获得的虚拟 API 密钥和发布示例 (JSON) 响应。你能不能请edit这个问题并在这里发布POJO课程。该 API 返回 JSONObject 但在您的客户端中,您期望 JSONArray (
List<DetailsMain>) 这是错误的并导致上述错误。 -
分享你的 POJO 课程