1

Polymer で firebase-auth 要素と firebase-document 要素を使用しています。プロバイダーとして「google」でサインインしています。私のfirebaseデータベースは以下のようなものです:

firebase-app-id-location
 [-]users
   [-]user1.uid
   [-]user2.uid

そのため、「Google」を使用してサインアップする新しいユーザーを作成する予定です。各ノード user1.uid には、独自の詳細が含まれます。全員の詳細を非公開にするために、以下のセキュリティ ルールを設定しました。

  "rules": {
    "users": {
      "$uid": {
        // grants write access to the owner of this user account whose uid must exactly match the key ($uid)
        ".write": "auth !== null && auth.uid === $uid",
        ".read": "auth !== null && auth.uid === $uid"

コードをテストするために、firebase ダッシュボードを使用してユーザーの下に手動でノードを作成しましたが、すべて正常に動作しています。しかし今、ユーザーはどのようにしてサインアッププロセスを開始するのでしょうか? ノードはログインしたユーザーのみが読み取り/書き込み可能であるためusers/、ユーザーが既に存在するかどうかを確認し、存在しusers/ない場合は新しいノードを作成するにはどうすればよいですかusers/user3.uid。サイドfirebase-documentポリマー要素では、場所を として設定しています location = "firebase-app-location.com/users/user.uid"。ユーザーが存在する場合、アプリは正常に動作し、データを取得しています。しかし、ユーザーが存在しない場合は、users/ の下にノードを作成し、プリセットのダミー データをロードします。

何か案は?これを機能させる方法。

4

0 に答える 0