3

我正在试用 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);
    });
}  
4

2 回答 2

1

同样的问题。allow read, write: if true;用和试过了allow read, write;。我是否经过身份验证都没关系。我的错误代码是:permission-denied,我的错误信息是Missing or insufficient permissions.

于 2017-10-09T12:58:33.197 回答
0

现在我可以创建文档了。问题正在发生,因为我的服务方法仍在使用 FireBase RealTime Database 代码插入数据,我的错(我之前使用的是 Firebase RT,只是想尝试一下 FireStore)。关于来自控制台的问题,当我尝试 Google Chrome(版本 60.0.3112.90)时,我仍然面临问题。但是当我从 FireFox 尝试时它可以工作。谢谢大家的回复。

于 2017-10-13T06:52:33.750 回答