【问题标题】:How to check if user exists in Cloud Firestore? [closed]如何检查用户是否存在于 Cloud Firestore 中? [关闭]
【发布时间】:2020-07-02 22:04:33
【问题描述】:

这是我为用户添加价值的地方。

val user = hashMapOf(
                USER_CONVERSATIONS to arrayListOf(""),
                USER_EMAIL_COLUMN to personEmail,
                USER_NAME_COLUMN to personName,
                USER_PHOTO_URL_COLUMN to personPhoto.toString(),
                USER_ID_COLUMN to personId
            )
 db.collection("users").add(user)

我需要在 Cloud Filestore 中放置哪个规则或在应用程序中检查?

这是我的结构:https://imgur.com/a/w0AltSf

感谢您的详细回答!

我不想用新ID注册我的帐户,并在应用程序中检查,已给出答案,谢谢!

【问题讨论】:

  • 如果您询问安全规则,您必须自己弄清楚本文档所需的权限,以及对新数据的任何限制。这里没有足够的信息来了解您真正需要什么。

标签: java android kotlin google-cloud-firestore


【解决方案1】:

您可以在插入之前请求知道该文档是否存在。你可以使用这样的东西。

firestore.collection("users").whereEqualTo("id", YOUR_USER_ID)
.limit(1).get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<QuerySnapshot> task) {
                      if (task.isSuccessful()) {
                        // You can check here if document exist.
                        // It will be empty if it doesnt.
                        boolean isEmpty = task.getResult().isEmpty();
                      }
                    }
                });

【讨论】:

    猜你喜欢
    • 2018-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-21
    • 2018-06-11
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    相关资源
    最近更新 更多