您的浏览器不支持 Firebase 消息传递如何解决?

IT技术 reactjs push-notification
2021-04-18 07:34:37

我正在使用 firebase 消息传递带有react的网络推送通知。但浏览器显示此消息

消息:此浏览器不支持使用 firebase SDK 所需的 API。(消息/不受支持的浏览器)

这是代码:

const initializedFirebaseApp = firebase.initializeApp({
  apiKey: "XXXXXX",
  authDomain: "XXXXXXX",
  databaseURL: "XXXXXXXXX",
  projectId: "XXXXXX",
  storageBucket: "XXXX",
  messagingSenderId: "XXXXXX",
  appId: "XXXXXX"
});

if (firebase.messaging.isSupported()) {
    let messaging = initializedFirebaseApp.messaging();
}

firebase.messaging.isSupported()总是返回错误。有什么办法可以继续吗?

react 版本:16.8.2 和 firebase 版本:6.0.2

2个回答

除了上述说明,您还可以通过执行以下操作来检查浏览器是否支持消息传递:

const messaging = firebase.messaging.isSupported() ? firebase.messaging() : null

这个解决方案对我有用。Firefox incognito 不支持 firebase。
2021-06-01 07:34:37

FCM 仅在localhost 和启用https 的站点中支持如果您希望 FCM 支持您需要在本地主机上工作或部署在某个地方(您可以使用 firebase)。

如果您使用像 local.somehost.com 这样的 nginx 代理,则云消息传递不支持。要解决此问题,您需要将 local.somehost.com 设为 HTTPS,您可以在 nginx 中安装 openssl 和证书和密钥。

我认为这可以解决您的问题。

我使用 Firebase 托管,但在 android webview 中仍然出现相同的错误
2021-06-15 07:34:37