Веб-код Firebase: отсутствует значение appId конфигурации приложения

Я застрял на странице 8 веб-лаборатории Firebase, получая ошибка:

FirebaseError: Установки: Отсутствует значение конфигурации приложения: "appId"...

Думаю, я следовал инструкциям. http://localhost:5000/__/firebase/init.js не содержать такое поле:

if (typeof firebase === 'undefined') throw new Error('hosting/init-error: Firebase SDK not detected. You must include it before /__/firebase/init.js');
var firebaseConfig = {
  "projectId": "friendlychat-310120",
  "databaseURL": "https://friendlychat-310120.firebaseio.com",
  "storageBucket": "friendlychat-310120.appspot.com",
  "locationId": "europe-west3",
  "apiKey": "AIza...vOXg",
  "authDomain": "friendlychat-310120.firebaseapp.com",
  "messagingSenderId": "480343738796"
};
if (firebaseConfig) {
  firebase.initializeApp(firebaseConfig);
}

Это не только ошибка. Чтение сообщений не работает.

введите здесь описание изображения


person akauppi    schedule 31.01.2020    source источник
comment
Если есть проблема с лабораторией кода, опубликуйте сообщение о проблеме на GitHub, чтобы ее можно было исправить. github.com/firebase/friendlychat-web   -  person Doug Stevenson    schedule 31.01.2020
comment
Хорошая точка зрения. Но это не проблема — я просто просмотрел инструкции здесь codelabs.developers. google.com/codelabs/firebase-web/#2 слишком быстро. В нем четко сказано: «Зарегистрируйте приложение с псевдонимом «Дружественный чат», затем установите флажок «Также настроить Firebase Hosting для этого приложения». Нажмите «Зарегистрировать приложение».   -  person akauppi    schedule 01.02.2020


Ответы (2)


В проблеме 2287 есть предыстория для этого. Критическое изменение упомянуто здесь:

Если в настоящее время вы используете FCM для Интернета и хотите перейти на SDK 7.0.0 или более позднюю версию, необходимо включить API регистрации FCM для вашего проекта в Google Cloud Console.

Я это сделал:

введите здесь описание изображения

Кроме того, необходимо:

Также убедитесь, что в конфигурации вашего приложения присутствуют projectId, apiKey, appId и messagingSenderId.

Руководство по тому, как это сделать, находится здесь:

Ok. Решено. appId определенно не projectId. И мне трудно найти, что это такое, или как его получить. Чтобы получить appId, вам необходимо создать регистрацию приложения (Android, iOS или Интернет) в консоли Firebase. ...

Вы, вероятно, видите это:

введите здесь описание изображения

Щелкните значок </>, и приложение будет зарегистрировано. Достаточно. Теперь ваш размещенный объект конфигурации http://localhost:5000/__/firebase/init.js должен также включать поле .appId.

  "appId": "1:4803...8796:web:400d...d209",

Также - самое главное! - мое веб-приложение Codelab теперь работает!

введите здесь описание изображения

Это происходит с веб-лабораторией Firebase. Надеюсь, добавят упоминание о необходимости регистрации приложения (а может я просто пропустил?).

person akauppi    schedule 31.01.2020

Была та же проблема - я заметил, что не добавил appId в конфигурацию initializeApp(). Это требуется для службы FCM (возможно, и для некоторых других), но не для Auth (которую я использовал).

person David Min    schedule 28.07.2021