首页 > 解决方案 > 写入后如何等待firebase的响应

问题描述

我正在编写一个 java 应用程序,它将数据写入 firebase,然后读取请求的响应以验证是否给出了正确的响应。我的数据写入代码如下:

DatabaseReference ref = FirebaseDatabase.getInstance()
        .getReference("/Messages");
    DatabaseReference newPostRef = ref.push();
    newPostRef.setValueAsync("<POJO passed>");

现在我想知道在这些数据被推送到 Firebase 后如何获得响应。

标签: javafirebase

解决方案


您可以使用 onComplete() 处理程序

在这里你可以找到一个示例代码:

DatabaseReference dataRef = ref.child("data");
dataRef.setValue("I'm writing data", new DatabaseReference.CompletionListener() {
  @Override
  public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) {
    if (databaseError != null) {
      System.out.println("Data could not be saved " + databaseError.getMessage());
    } else {
      System.out.println("Data saved successfully.");
    }
  }
});

您也可以使用 lambda 代替 CompletionListener。这使代码更具可读性。


推荐阅读