繁体   English   中英

Firebase 云消息传递 - JS SDK 中的 getToken() 错误

[英]Firebase Cloud Messaging - getToken() error in JS SDK

我正在为 KaiOS 开发一个应用程序,它是旧 Firefox 操作系统的一个分支,其应用程序基于 HTML5 + JS。 在设备上编译和运行时,Firebase 云消息停止工作。 我收到如下错误。

TypeError:PushSubscriptionOptionsInit 的“applicationServerKey”成员无法转换为以下任何一种:ArrayBufferView、ArrayBuffer。

我已按照此处Firebase 文档中的说明以及此处有关为渐进式 Web 应用程序设置 FCM 的教程进行操作。 我可以在调用 getToken 之前确认我正在设置我的密钥,如下所示:

import firebase from "firebase";

const messaging = firebase.messaging();
messaging.usePublicVapidKey("<my-key-from-firebase-settings>");

messaging.getToken().then((currentToken) => {
    ...
}).catch((err) => {
    ...
});

我已经搜索了上述错误,但无济于事。 有谁知道这个错误是什么意思或如何解决? 在我的开发机器上的浏览器中运行应用程序,一切正常。

注意:应用程序编写在 Typescript Firebase SDK 版本: 7.12.0

它可能对您没有帮助,但我最近在不同的环境中遇到了类似的错误消息:

错误:无法在“PushManager”上执行“订阅”:提供的值不是“(ArrayBuffer 或 ArrayBufferView)”类型

它已在 Firebase 的 7.13.2 版本中修复:

https://github.com/firebase/firebase-js-sdk/issues/2712

https://firebase.google.com/support/release-notes/js#version_7132_-_april_2_2020

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM