Firestore许可规则

时间:2019-03-14 09:50:25

标签: jquery firebase google-cloud-firestore firebase-security-rules

让2个应用程序使用相同的Firestore数据。 1. 前端 2. 后端

前端 使用jquery只显示数据。

后端 Angular7管理应用程序,用于创建,更新,删除前端数据。

现在前端提示错误

  

错误:PERMISSION_DENIED:权限被拒绝

Firestore规则

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

代码

var dbRef = firebase.database();
var contactsRef = dbRef.ref("Slides");

//load older conatcts as well as any newly added one...
contactsRef.on("child_added", function(snap) {
  console.log("added", snap.key(), snap.val());
  $("#contacts").append(contactHtmlFromObject(snap.val()));
});
function contactHtmlFromObject(contact) {
  console.log(contact);
  var html = "";
  html += '<li class="list-group-item contact">';
  html += "<div>";
  html += '<p class="lead">' + contact.name + "</p>";

  html += "</div>";
  html += "</li>";
  return html;
}

1 个答案:

答案 0 :(得分:0)

Firebase中有两种数据库:实时数据库 Firestore

您的请求正在访问实时数据库

var dbRef = firebase.database();
var contactsRef = dbRef.ref("Slides");

但规则适用于您的 Firestore 数据库:

service cloud.firestore {

因此,您需要转到Firebase中的“数据库”部分,并在标题旁边看到一个下拉列表。切换到实时数据库,然后选择Rules标签。

它应该像这样:

{
    "Slides": {
      ".write": "auth != null",
      ".read": true,
    },
}