我正在嘗試Cloud Firestore。我認爲我做了一些愚蠢的事情,所以我無法通過代碼和控制檯創建任何文檔/集合。在Cloud Firestore上創建文檔時出錯 - 權限被拒絕
我還沒有使用任何寫/讀規則(任何人都可以讀/寫)將數據庫鎖定到數據庫。以下是我的規則配置。
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
當我通過控制檯嘗試,它打開了,我進入了集合名稱的第一個文檔(使用生成的ID),一個模式。然後點擊'保存'只是關閉模式,但數據庫沒有更新。
當我嘗試通過代碼(JS)插入文檔時,我可以看到在控制檯上拋出的以下錯誤。
Error updating data: Error: PERMISSION_DENIED: Permission denied
at firebase-storage.js:3479
at z (firebase-storage.js:3479)
at t.callOnCompleteCallback (firebase-storage.js:3479)
at firebase-storage.js:3479
at firebase-storage.js:3479
at e.ci (firebase-storage.js:3479)
at t.ci (firebase-storage.js:3479)
at t.qi (firebase-storage.js:3479)
at e.onMessage (firebase-storage.js:3479)
at e._o (firebase-storage.js:3479)
下面是JS代碼。
var config = {
apiKey: "xxxx",
authDomain: "xxxx.firebaseapp.com",
databaseURL: "https://xxxx.firebaseio.com",
projectId: "xxxx",
storageBucket: "",
messagingSenderId: "yyyy"
};
firebase.initializeApp(config);
var db = firebase.firestore();
$scope.addNote = function() {
var note = {
text: 'Sample Note',
createdBy: 'Ranis'
}
db.collection('notes').add(note).then(function(data) {
console.log('Note Added ', data)
},
function(err) {
console.log('Note Add Error ', err);
});
}
需要檢查的兩件事情:1)您是否意外更改了實時數據庫的規則而不是控制檯中的Cloud Firestore? 2)如果明確添加「允許讀取,寫入:如果爲真」會發生什麼? –
@ToddKerpelman感謝您的回覆。我忙於工作,所以無法看清楚。現在我可以創建文檔了。請找到已發佈的答案。 – hashcoder