2017-06-28 15 views
0

ここで、追加するデータが既にDBに入っているかどうかをチェックすることができますか?Firebase DB:既にデータが保存されていることを確認してください。

私はしかし、私は、電子メールアドレスの重複を探すためにセキュリティルールを必要と一致するメールアドレスが存在しない場合にのみ、ユーザーを保存する:

私はあなたに私が何を意味するかの非常に簡単な例を挙げてみましょう受信したデータを保存することができます。

DB構造:

root 
└── users 
    └── uID 
     ├── email 
     ├── name 
     └── gender 

はJSONを送っ:

{ 
    email: [email protected], 
    name: John Example, 
    gender: male 
} 

注意:私は、ログインにこれ​​らのデータを使用していないを私はFacebookのグラフAPIから返されたデータを格納しています。

ありがとうございました!

+0

Android、iOS、Webなどのプラットフォームはどれですか? –

+1

@AlexMamoセキュリティルールはウェブ上で設定されています。したがって、プラットフォーム固有ではありません。 – TomasB

+0

Androidで、コードでやるのに助けがありますか? –

答えて

0
"rules" : { 
    "test" : { 
     ".write" : "true && newData.val() !== data.child('email').val()", 
     ".read" : true 
} 
} 

+0

あなたのご意見ありがとうございますが、私は私はロギング用のデータを使用していないので、私は認証式を使用できません。 – TomasB

+0

authを使用しない場合は、認証を削除して試しても影響はありません@TomasB – Prags

+0

それはnewData.child( 'email')にchengeしなければなりません。 パス(少なくともシミュレータで)仕事: /ユーザー/ test23 { 「電子メール」:「123」 } 私は「123」の電子メールを持つ一人のユーザーを持っており、それはまだあなたが書くことができます。 – TomasB

関連する問題