在 React Web 应用程序中集成 Firebase 时获得'permission-denied'



我正在尝试通过反应网络应用程序保存文档,但面临以下问题。我已阅读 Firebase 规则文档。

这是代码

constructor(props)
{
super(props);
var config = {
apiKey: "<apiKey>",
authDomain: "<authDomain>",
databaseURL: "<databaseURL>",
projectId: "<projectId>",
storageBucket: "",
messagingSenderId: "<messagingSenderId>"
};
firebase.initializeApp(config);
}

我们正在触发按钮点击

onKeyUp(e)
{
if(e.keyCode===13 && trim(e.target.value) !== '')
{
e.preventDefault();
let dbCon=this.props.db.database().ref('/messages');
dbCon.push(
{
message:trim(e.target.value)
}
);
);
}
}

Database rules:

service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write:if true;
}
}
}

我们正面临这个问题。我做错了什么?

Stack Trace:

Uncaught (in promise) Error: PERMISSION_DENIED: Permission denied
at index.cjs.js:13076
at exceptionGuard (index.cjs.js:690)
at Repo../node_modules/@firebase/database/dist/index.cjs.js.Repo.callOnCompleteCallback (index.cjs.js:13067)
at index.cjs.js:12844
at index.cjs.js:12019
at PersistentConnection../node_modules/@firebase/database/dist/index.cjs.js.PersistentConnection.onDataMessage_ (index.cjs.js:12052)
at Connection../node_modules/@firebase/database/dist/index.cjs.js.Connection.onDataMessage_ (index.cjs.js:11337)
at Connection../node_modules/@firebase/database/dist/index.cjs.js.Connection.onPrimaryMessageReceived_ (index.cjs.js:11331)
at WebSocketConnection.onMessage (index.cjs.js:11232)
at WebSocketConnection../node_modules/@firebase/database/dist/index.cjs.js.WebSocketConnection.appendFrame_ (index.cjs.js:10837)
at WebSocketConnection../node_modules/@firebase/database/dist/index.cjs.js.WebSocketConnection.handleIncomingFrame (index.cjs.js:10887)
at WebSocket.mySock.onmessage (index.cjs.js:10784)

新手错误,使用的是较新的Firestore数据库而不是使用实时数据库。更改为实时数据库解决了此问题。

最新更新