如何将firbease的DataSnapshot转换为json文件或如何将Firebase数据库检索为json文件

时间:2018-12-03 11:00:54

标签: android arrays json firebase firebase-realtime-database

我想从firebase中检索json数据,所以我怎么能从firebase中检索它或如何将firebase datasnapshot转换为json格式。

2 个答案:

答案 0 :(得分:0)

Firebase数据库SDK不会公开原始基础数据。如果您想从DataSnapshot中获取JSON,则必须在应用程序代码中复制它。

或者,您可以使用REST API通过读取(严格来说:针对HTTP GET发出请求)https://yourdb.firebaseio.com/path/to/data.json(此处是{{1} ,因为它告诉Firebase返回数据。

有关此内容的更多信息,请参见reading data through the REST API上的文档,也可以查看authenticating REST requests上的文档。

答案 1 :(得分:0)

如果您有自定义的类/对象或Map,请尝试这样...

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) {
        }
    });