Коллекции Firestore не могут быть доступны после повторной инициализации в Firebase - Flutter - PullRequest
0 голосов
/ 24 октября 2019
  • Я инициализировал приложение Flutter и прекрасно работал с Firebase.

  • И мне пришлось удалить приложение из firebase из-за некоторых соображений безопасности несколько недель назад.

  • Позже я успешно добавил свое приложение в Firebase и использую новый google-services.json, чтобы мое приложение снова заработало. Аутентификация работает нормально, но потом я понял, что ни одна из моих коллекций не может читать и писать в приложении.

  • Когда я проходил через консоль отладки, я думал, что при каждом чтении или записи коллекции возникает исключение.

Это исключение, которое я вижу, когда пытаюсь добавить тестовую коллекцию в свою базу данных.

W / Firestore (16689): (19.0.0) [Firestore]: запись не удалась при тестировании / 123: состояние {code = PERMISSION_DENIED, description = отсутствует или недостаточно разрешений., Причина = null} `` `

Затем я попытался изменить правила базы данных наобщественности. Но проблема все еще существует.

Мой доктор по флаттеру Результаты Детали флаттера

Зависимости и версии Firebase, которые я использую в своем проекте

  1. firebase_core: 0.4.0 + 9
  2. firebase_auth: 0.14.0 + 2
  3. cloud_firestore: ^ 0.12.9
  4. cloud_functions: 0.4. 1 + 1
  5. firebase_messaging:

1 Ответ

1 голос
/ 24 октября 2019

Проверьте ваши правила базы данных в консоли Firebase, если они действительно открыты для вашего приложения. Правила должны разрешать доступ только для чтения и записи в ваших случаях использования. Возможно, вы запретили этот доступ в своей недавно инициализированной базе данных.

  function isSignedIn() {
    return request.auth.uid != null;
  }

  allow read, write: if isSignedIn() && request.auth.uid == resource.data.uid

публичный доступ означал бы, что read and write оба всегда имеют значение true.

...