Облачные функции Firebase «Ошибка: не удалось загрузить учетные данные по умолчанию». Нужна ли служебная учетная запись в среде Cloud Functions? - PullRequest
0 голосов
/ 25 марта 2020

Недавно я получил тонны ошибок в двух моих облачных функциях.

Ошибка: не удалось загрузить учетные данные по умолчанию. Просмотр https://cloud.google.com/docs/authentication/getting-started для получения дополнительной информации. в GoogleAuth.getApplicationDefaultAsyn c (/srv/functions/node_modules/google-auth-library/build/src/auth/googleauth.js:161:19) в process._tickCallback (внутренняя / process / next_tick. * 1063) *: 68: 7)

Как я инициализирую firebase-admin:

Функция 1

const admin = await import('firebase-admin');
if (!adminHasInitialized) {
  admin.initializeApp();
  adminHasInitialized = true;
}

Функция 2

if (!adminHasInitialized) {
  admin.initializeApp({
  credential: admin.credential.applicationDefault()
});
adminHasInitialized = true;
}

Оба регистрируют эти ошибки.

И странно то, что есть функция 3, которая не имеет этих ошибок.

Функция 3 (без ошибок):

Инициализирует его так же, как и функция 1.

const admin = await import('firebase-admin');
if (!adminHasInitialized) {
  admin.initializeApp();
  adminHasInitialized = true;
}

Единственная разница в Функция 3 , я развернул его гораздо позже, чем другие 2. Не уверен, что это связано.

ВОПРОС

Нужно ли развертывать ключ serviceAccount для среды Cloud Function ??? Как правильно инициализировать его, чтобы избавиться от этих ошибок?

Я не делал этого из-за этого фрагмента DO C:

https://firebase.google.com/docs/admin/setup

enter image description here

И я развернул ВСЕ из них с помощью Firebase CLI.

Ошибки являются прерывистыми (но частыми). Иногда функции работают без сбоев.

...