Правила Firestore для разрешения - PullRequest
0 голосов
/ 14 марта 2019

Имеют 2 приложения, использующих одни и те же данные пожарного депо.1. Frontend 2. Backend

Frontend с использованием jquery для отображения только данных.

Backend Приложение администратора Angular7, используемое для создания, обновления, удаления данных для внешнего интерфейса.

теперь ошибка приглашения внешнего интерфейса

Ошибка: PERMISSION_DENIED: разрешение отклонено

Правила пожарной охраны

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 голосов
/ 14 марта 2019

В Firebase существует два вида баз данных: База данных реального времени и Firestore .

Ваш запрос обращается к базе данных Realtime :

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

, но правила для вашей базы данных Firestore :

service cloud.firestore {

Итак, вам нужно перейти в раздел базы данных в Firebase и рядом с названием, которое выувидит выпадающий список.Переключитесь на Realtime Databse и затем выберите вкладку Rules.

Это должно выглядеть так:

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