reactjs - 您的浏览器不支持 Firebase 消息传递如何解决?
问题描述
我正在使用 firebase 消息传递进行响应的网络推送通知。但浏览器显示此消息
消息:此浏览器不支持使用 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()
总是返回错误。有什么办法我应该继续吗?
反应版本:16.8.2 和 firebase 版本:6.0.2
解决方案
FCM 仅支持localhost 和启用 https的站点。如果您希望 FCM 支持您需要在 localhost 上工作或部署在某个地方(您可以使用 firebase)。
如果您使用 nginx 代理,例如 local.somehost.com,则不支持云消息传递。要解决这个问题,您需要将 local.somehost.com 设置为 HTTPS,您可以在 nginx 中安装 openssl 和证书和密钥。
我认为这可以解决您的问题。
推荐阅读
- c++ - 如何使用 C++ 将字符串中的字符转换为整数变量
- primefaces - Primefaces数据表选择大数据集慢
- python - Tkinter:无法用小部件填充整个框架
- php - 当我在 com 和其他小词上搜索时,MongoDb 全文搜索会占用内存
- flutter - Flutter - 事件/时间线预约预约布局问题
- scheme - plt-r5rs 中未定义“错误”过程
- python - 通过 Anaconda 在任何 Python 中的内核错误(13)“无法启动内核”-尝试 Spyder 4.0 更新后
- sql - 使用带 PK 的 WHERE 使用 Foreach 更新百万行
- r - 为什么这个 R 代码不产生相同的结果?(卷积与 FFT)
- recursion - 较大尝试的递归释放