我在离子应用程序中使用了signInWithVerificationId()
。一切都很好。但是我不能与此插件一起使用Firebase数据库规则。以下是我的代码。请帮助实现数据库规则。
我使用https://ionicframework.com/docs/v3/native/firebase-authentication/对用户进行身份验证 和https://www.npmjs.com/package/firebase来访问Firebase数据。
发送OTP的功能
send(){
this.firebaseAuthentication.verifyPhoneNumber(this.mobile,60).then((data)=>{
console.log(data) this.verificationId = data; alert('OTP SENT');
},error=>{ console.log(error) })
}
登录代码
verify(){
this.firebaseAuthentication.signInWithVerificationId(this.verificationId, this.code).then((verified)=>{
if(verified=='OK'){
console.log('user loggedin successfully')
}
},error=>{ console.log(error) })
}
获取数据的代码
this.firebaseAuthentication.onAuthStateChanged().subscribe((user)=>{
if(user){
console.log(user);
firebase.database().ref('dummydata').on('value',snapshot=>{
console.log('data ',snapshot.val())
},error=>{ console.log('error ',error)
})
}
数据库规则
{ "rules": { "dummydata":{ ".read": "auth!=null", ".write": "auth!=null" } } }
错误:/ dummydata中的权限被拒绝:客户端没有访问所需数据的权限。