java - 从 firebase 数据库获取数据时期望开始数组时出错

标签 java android firebase firebase-realtime-database

我是改造和 firebase 的新手,我有 firebase 实时数据库,它返回此 json

 {
   "item1": {
       "img_url": ...",
       "price": 3000,
       "title": "padi"
    },
   "item2": {
       "img_url": "...",
       "price": 2000,
       "title": "tomat"
    }
}

我的模型:

public class Panen {

   private String title;

   @SerializedName("img_url")
   private String imgUrl;
   private Integer price;

   //getter-setter
}

这是我的改造服务:

@GET("/panen.json")
Call<List<Panen>> getPanen();

但每当我打电话时,我总是收到此错误:

Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path $

对于为什么会发生此错误有什么建议吗?

最佳答案

改变这个

@GET("/panen.json")
Call<List<Panen>> getPanen();

@GET("/panen.json")
Call<Panen> getPanen();

因为你的json不是数组,是对象。

关于java - 从 firebase 数据库获取数据时期望开始数组时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57376449/

相关文章:

android - 带 Android 设计库的方形 FloatingActionButton

firebase - 如何在不带X的Flutter中为iOS添加Firebase SDK-代码

java - 在任意角落绘制图像

java - 在 Android 的聊天应用程序中创建文本气泡的更好选择?

java - 如何检查时间戳(纪元时间)是今天还是昨天[android]

android - 我应该在表单中使用标签或提示吗?

java - 如何对列表中的日期进行排序

java - 为 JVM 禁用 "internet access"?

ios - 通过 Firebase iOS 实现 AdMob 时遇到的问题

python - 在 django 中使用 json 文件 firebase SDK 时出现错误