Не удается установить serviceAccountKey для облачного хранилища файлов с Python - PullRequest
0 голосов
/ 28 апреля 2018

Я пытаюсь получить доступ к базе данных Cloud Firestore моего проекта Firebase. У меня очень простой код, я просто хочу подключиться к своей базе данных и добавить в нее что-то, но, к сожалению, я не могу правильно установить serviceAccountKey, поэтому я получаю следующую ошибку:

raise exceptions.DefaultCredentialsError(_HELP_MESSAGE)
google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or
explicitly create credential and re-run the application. For more
information, please see
https://developers.google.com/accounts/docs/application-default-credentials.

Конечно, я понимаю это сообщение и посетил ссылку для разработчиков Google , но я не нашел ничего, что могло бы пригодиться в моем случае.

Должно быть добавлено, что я пытаюсь это руководство по Firebase , поэтому я следовал его примеру кода, и он выполняет проверку с помощью файла serviceAccountKey.json.

Так вот мой код, который выдает ошибку:

import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore

cred = credentials.Certificate('serviceAccountKey.json')
firebase_admin.initialize_app(cred)

db = firestore.client()

doc_ref = db.collection(u'dev').document(u'alovelace')
doc_ref.set({
    u'first': u'Ada',
    u'last': u'Lovelace',
    u'born': 1815
})

Я опробовал два разных ключа учетной записи, загруженных из двух разных мест внутри администратора Firebase. Я предполагаю, что правильным является то, что я нашел в Settings > Service Accounts > Firebase Admin SDK - поэтому я скачал сгенерированный ключ, скопировал его в папку с приложениями и переименовал его в serviceAccountKey.json, затем запустил код и получил ошибку в верхней части вопроса. ,

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

...