Можно ли проверить Firestore в Flask Web App локально (без развертывания веб-сайта) - PullRequest
0 голосов
/ 30 октября 2019

Я работаю над небольшим проектом, где данные загружаются в Firestore на одной странице и извлекаются на другой на том же веб-сайте. Можно ли проверить интеграцию Firestore, когда сайт размещен на localhost?

Когда я пытаюсь получить доступ к функциональности Firestore после развертывания моего сайта на localhost, я получаю:

"google.api_core. exceptions.FailedPrecondition: 400 API Cloud Firestore недоступен для проектов в режиме хранилища данных. "ошибка.

Единственная документация, которую я могу найти: " Как развернуть API Flask Crud с Firestore ... "

Примечание: 1. Я посмотрел на ошибкуи дважды проверил, что мой проект находится в режиме Firestore (я создал проект из консоли Firebase), а затем использовал следующее в моем приложении Flask для аутентификации базы данных:

import firebase_admin
from firebase_admin import credentials
cred = credentials.Certificate("path/to/serviceAccountKey.json")
firebase_admin.initialize_app(cred)

Любые другие входные данные по этому вопросу будут оценены!

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

Спасибо, что заглянули в это.

Ответы [ 2 ]

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

Сообщение об ошибке означает, что ваша база данных Cloud Firestore находится в режиме хранилища данных вместо основного режима . Если вы никогда ничего не сохраняли в своей базе данных, вы не можете изменить режим.

Попробуйте создать новый проект, создать новую базу данных Cloud Firestore и выбрать собственный режим:

  • В консоли GCP вам будет предложено выбрать.
  • В консоли Firebase он автоматически выберет собственный режим.
0 голосов
/ 30 октября 2019

Я выяснил проблему. Я использовал код cred = credentials.Certificate ("path / to / serviceAccountKey.json") с новым сгенерированным закрытым ключом для проверки подлинности моей базы данных пожарного депо, однако система взяла для этой цели старый $ GOOGLE_APPLICATIONS_CREDENTIALS.

Обновление до нового ключа устранило проблему, и да, я могу проверить интеграцию приложения FLASK с Firestore на Localhost:)

export GOOGLE_APPLICATION_CREDENTIALS='/Users/..../newkey.json'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...