【发布时间】:2021-07-01 01:05:08
【问题描述】:
我检查了我在 firebase 中的规则和我项目中的 firestore.rules 文件,但我不知道是什么原因造成的。
我的 HTML 代码。
<form id="Login" class="input-group">
<input id="firstName" type="text" class="input-field" placeholder="First Name" required>
<input id="lastName" type="text" class="input-field" placeholder="Last Name" required>
<input id="Major" type="text" class="input-field" placeholder="Major" required>
<input id="Academicyearr" type="text" class="input-field" placeholder="Academic Year" required>
<button id="write_Test" type="submit" class="submit-buton"> Test Write </button>
</form>
这是java脚本代码
const db = firebase.firestore();
const updateForm = document.querySelector('#Login');
updateForm.addEventListener('submit', (e) => {
e.preventDefault();
firebase.auth().onAuthStateChanged(user => {
console.log(user.uid);
if(user) {
db.collection('Users').doc(user.uid).set({
// email: updateForm['update-email'].value,
name: updateForm['firstName'].value,
// dob: updateForm['update-dob'].value,
// phone: updateForm['update-phone'].value
})
}
});
});
这就是我的 Firestore 中的规则
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
//match logged in user doc in users collection
match /Users/{userId} {
allow read, write, update: if request.auth.uid == userId;
allow create: if request.auth.uid != null;
}
}
}
错误是
未捕获(承诺)FirebaseError:权限缺失或不足
当我在本地运行我的 web 应用程序时,它会出现在控制台中。
任何帮助将不胜感激,对我来说放轻松,我是 firebase 的新手。
【问题讨论】:
-
console.log(user.uid);显示什么? -
我登录用户的uid
-
我不是在问它要显示什么,我是在问它实际上在显示什么
-
还要注意你的两条规则是重叠的,
create包含在write中
标签: javascript html firebase google-cloud-firestore firebase-security