Chrome 69 не поддерживает Firebase SDK - PullRequest
0 голосов
/ 06 сентября 2018

Вчера все работало отлично, сегодня утром я заметил, что Chrome вводит новый интерфейс, потом я проверил версию Chrome, теперь она обновлена ​​до v69. Все идет нормально. Затем я запустил свой сервер, который связан с firebase. Но я начал получать это:

09:46:30.598 index.esm.js?76ac:2069 Uncaught FirebaseError {code: "messaging/unsupported-browser", message: "Messaging: This browser doesn't support the API's …he firebase SDK. (messaging/unsupported-browser).", stack: "FirebaseError: Messaging: This browser doesn't sup….0.0.0:8000/index.js?d00bc69e0c69f561d4af:2672:1)"}code: "messaging/unsupported-browser"message: "Messaging: This browser doesn't support the API's required to use the firebase SDK. (messaging/unsupported-browser)."stack: "FirebaseError: Messaging: This browser doesn't support the API's required to use the firebase SDK. (messaging/unsupported-browser).
at Object.factoryMethod [as messaging] (webpack-internal:///311:2077:32)
at FirebaseAppImpl._getService (webpack-internal:///30:134:66)
at FirebaseAppImpl.(anonymous function) [as messaging] (webpack-internal:///30:323:31)
at Object.serviceNamespace [as messaging] (webpack-internal:///30:308:32)
at eval (webpack-internal:///66:51:36)
at Object.<anonymous> (http://0.0.0.0:8000/index.js?d00bc69e0c69f561d4af:1240:1)
at __webpack_require__ (http://0.0.0.0:8000/index.js?d00bc69e0c69f561d4af:708:30)
at fn (http://0.0.0.0:8000/index.js?d00bc69e0c69f561d4af:113:20)
at eval (webpack-internal:///286:55:11)
at Object.<anonymous> (http://0.0.0.0:8000/index.js?d00bc69e0c69f561d4af:2672:1)"__proto__: Error

Длинная ошибка сделана короткой: Messaging: This browser doesn't support the API's required to use the firebase SDK

Переход на Chrome 68 - это решение, но у кого-нибудь есть идея получше?

EDIT:

Системная информация: Pop! _OS 18.04 LTS Linux (64-bit)

Chrome версия: 69.0.3497.81 (официальная сборка) (64-разрядная версия)

Версия узла: v10.9.0

EDIT:

Сервер отлично работает при развертывании в рабочей среде и Firefox.

Ответы [ 5 ]

0 голосов
/ 22 июня 2019

Эта проблема возникает, если вы не используете HTTPS или localhost. Это задокументировано в официальной документации: источник

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

Конечно, ваша проблема была вызвана использованием 0.0.0.0 вместо localhost, на что правильно указал Noureldean Swearky.

0 голосов
/ 17 сентября 2018

редактировать: https://github.com/firebase/firebase-js-sdk/issues/1220#issuecomment-421317994

Должна быть проблема с SSL

Я тестировал в Amazon S3 Bucket без SSL ..

Пока единственное решение, которое я вижу, это проверка версии Chrome и отключение firebase в 69. ​​

Это сломало целое приложение, я работаю над ним. Мы использовали Firebase Cloud Messaging для push-уведомлений, и до Chrome 68 все было хорошо.

В localhost работает, а на производстве нет.

Обновлены скрипты:

https://www.gstatic.com/firebasejs/5.5.0/firebase-app.js https://www.gstatic.com/firebasejs/5.5.0/firebase-messaging.js

и безуспешно.

забавная вещь: когда я отлаживаю хром

if ('Notification' in window) {
  console.log('supported'); } else {
 console.log(' not supported'); }

он говорит, что push API поддерживается.

0 голосов
/ 07 сентября 2018

Это выглядит как ошибка / нарушение спецификации в Firefox. В текущей версии Firefox Nightly (версия 64) эта ошибка также будет выдана.

0 голосов
/ 09 сентября 2018

РЕШЕНИЕ

Я работал над 0.0.0.0:8000, изменил его на localhost:8000, и он работал, некоторые утверждали бы огромную разницу, я утверждаю обратное ...

0 голосов
/ 06 сентября 2018

попробуйте новейшую библиотеку Firebase JS Version 5.4.2 - August 30, 2018.

Исправлена ​​ошибка, из-за которой глобал navigator был недоступен в некоторых средах.

... в то время как версия NodeJS не имеет значения.

...