【发布时间】:2019-05-04 16:02:35
【问题描述】:
我想从 firebase 中检索 json 数据,那么如何从 firebase 中检索它,或者如何将 firebase 数据快照转换为 json 格式。
【问题讨论】:
-
自己尝试并发布一些代码。
-
发布您的数据快照
标签: android arrays json firebase firebase-realtime-database
我想从 firebase 中检索 json 数据,那么如何从 firebase 中检索它,或者如何将 firebase 数据快照转换为 json 格式。
【问题讨论】:
标签: android arrays json firebase firebase-realtime-database
如果您有自定义类/对象或地图,请尝试这样...
List<JSONObject> obj=new ArrayList<JSONObject>();
DatabaseReference dbRef = FirebaseDatabase.getInstance().getReference("Your_Path");
dbRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot childDataSnapshot : dataSnapshot.getChildren()) {
YourObjectClass cls=childDataSnapshot.getValue(YourObjectClass.class);
JSONObject jo=new JSONObject();
jo.put("your variable name",cls.YOUR_KEY);
//Extra properties...
obj.add(jo);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
【讨论】:
Firebase 数据库 SDK 不会公开原始基础数据。如果您想要来自 DataSnapshot 的 JSON,则必须在您的应用程序代码中重现它。
或者,您可以使用 REST API 通过读取(严格来说:触发 HTTP GET 请求)https://yourdb.firebaseio.com/path/to/data.json(.json 在这里至关重要,因为它告诉 Firebase返回数据。
有关这方面的更多信息,请参阅 reading data through the REST API 和可能的 authenticating REST requests 上的文档。
【讨论】: