如何解决在Firebase中发送Web推送通知可以成功,但不能在客户端接收它们
我正在使用react,并且一直在关注如何启用Web推送通知的文档,我已经创建了firebase-messaging-sw.js
,并使用getToken()
方法在客户端中获取了令牌。还在index.js
文件中注册了serviceWorker。
碰巧它可以正常工作,有时却不工作,而且服务工作者通过启动显示一些错误,有时表明一切都很好,所以我想知道我在想什么或缺少什么为了最终启用推送通知,我要做的其他事情。
我以3种方式测试em:在firebase控制台上,使用https://fcm.googleapis.com/fcm/send
API和node.js上的firebase-admin
SDK
我的firebase-messaging-sw.js
看起来像这样:
importScripts("https://www.gstatic.com/firebasejs/7.8.0/firebase-app.js");
importScripts("https://www.gstatic.com/firebasejs/7.8.0/firebase-messaging.js");
firebase.initializeApp({
apiKey: "...",authDomain: "...",databaseURL: "...",projectId: "...",storageBucket: "...",messagingSenderId: "...",appId: "...",measurementId: "...",});
const messaging = firebase.messaging();
messaging.usePublicVapidKey(
"...KEY..."
);
使用SDK的代码如下所示
// Full payload to be send
body = {
registration_ids: fcm_tokens,//Array of tokens
priority: "high",notification: {
title: data_activity_log.type.title,body: data_activity_log.type.description,},};
// SDK function to send to multiple receipts
admin
.messaging()
.sendMulticast(body)
.then((response) => {
console.log("multicast response",response);
})
.catch((error) => {
console.error("multicast error",error);
});
总是在响应中得到如下信息:
"multicast_id": ......,"success": 1,"failure": 0,
客户端代码似乎有问题,但是我没有理解,没有显示错误或任何建议或我做错了,请帮忙
我已经坚持了5天:((
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。