【问题标题】:remove a value from firebase database从 firebase 数据库中删除一个值
【发布时间】:2019-02-07 19:47:51
【问题描述】:

我正在尝试从 Firebase 数据库中删除一个节点,但没有任何反应。

这是我的代码:

FileInputStream serviceAccount = new FileInputStream(keyPath);

FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredentials(GoogleCredentials.fromStream(serviceAccount))
    .setDatabaseUrl(databaseUrl)
    .build();

FirebaseApp.initializeApp(options);

DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
ref.child("Users").child(uid).child("name").removeValue()

这是输出:

SLF4J:无法加载类“org.slf4j.impl.StaticLoggerBinder”。
SLF4J:默认为无操作 (NOP) 记录器实现
SLF4J:见http://www.slf4j.org/codes.html#StaticLoggerBinder了解更多 细节。

09-02-2018 05:43:53 PM - [开始] - 开始行动:声明 - serviceAccount = 新 java.io.FileInputStream(keyPath) 09-02-2018 05:43:53 PM - [END] - 结束操作:声明 - serviceAccount = new java.io.FileInputStream(keyPath) 09-02-2018 05:43:53 PM - [开始] - 开始行动:声明 - 选项 = 新 com.google.firebase.FirebaseOptions$Builder().setCredentials(com.google.auth.oauth2.GoogleCredentials.fromStream(serviceAccount)).setDatabaseUrl(databaseUrl).build() 09-02-2018 05:43:53 PM - [结束] - 结束行动:声明 - 选项 = 新的 com.google.firebase.FirebaseOptions$Builder().setCredentials(com.google.auth.oauth2.GoogleCredentials.fromStream(serviceAccount)).setDatabaseUrl(databaseUrl).build() 09-02-2018 05:43:53 PM - [开始] - 开始行动:声明 - com.google.firebase.FirebaseApp.initializeApp(选项)09-02-2018
05:43:53 PM - [结束] - 结束行动:声明 - com.google.firebase.FirebaseApp.initializeApp(选项)09-02-2018
05:43:53 PM - [开始] - 开始行动:声明 - 参考 = com.google.firebase.database.FirebaseDatabase.getInstance().getReference()
09-02-2018 05:43:53 PM - [END] - 结束行动:声明 - ref = com.google.firebase.database.FirebaseDatabase.getInstance().getReference()
09-02-2018 05:43:53 PM - [开始] - 开始行动:声明 ref.child("Users").child(uid).child("name").removeValue() 09-02-2018
05:43:53 PM - [结束] - 结束行动:声明 - ref.child("Users").child(uid).child("name").removeValue() 09-02-2018
05:43:53 PM - [通过] - 测试用例/V2/常规/草稿 09-02-2018
05:43:53 PM - [END] - 结束测试用例:Test Cases/V2/General/Draft

正如我所说,数据库没有任何变化。
有什么想法吗?

【问题讨论】:

  • 你能发布你的数据库结构吗?谢谢

标签: java firebase firebase-realtime-database firebase-admin


【解决方案1】:

我最终在 github 上找到了这个存储库:https://github.com/bane73/firebase4j
在自述文件中,有一个简单的示例,通过仅提供数据库 url 和您要写入的数据,将值写入 firebase 数据库。
为了删除一个值,只需将值设置为 null:

String url = 'https://project-name.firebaseio.com/users/user1/email'

//Initialize database
Firebase firebase = new Firebase(baseUrl);

//remove email of user1
Map<String, Object> dataMap = new LinkedHashMap<String, Object>();
dataMap.put("some str", null);
firebase.put(dataMap)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 1970-01-01
    相关资源
    最近更新 更多