问题标签 [vapid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
47 浏览

javascript - 订阅 Firebase 服务器时未收到推送通知

我正在编写我的第一个 PWA 应用程序。我正在使用 Firebase 来处理我的数据存储和订阅。我有(看起来它创建了一个订阅),但我没有通过浏览器(Chrome 和 Safari)收到任何通知。我已经检查并且 localhost:8080 确实允许通知。

检查 Firebase 日志我能看到的唯一问题是以下日志条目: storePostData body: 'invalid JWT provided\n',

我可以看到帖子被添加到 Firebase 数据库中,因此正在存储数据。

我发现了一个 github 帖子(https://github.com/web-push-libs/web-push/issues/532)说这可能是 VAPID 和生成的问题,这是我用来生成我的公共/私人的包​键。​</p>

这是我用来创建和订阅的代码。任何指针将不胜感激。

Index.js - 代码作为函数在 Firebase 上运行

应用程序.js

服务人员

辅助方法

0 投票
0 回答
22 浏览

javascript - 当 VAPID 仅用于识别服务器推送服务时,为什么需要公共 VAPID 密钥在浏览器端创建订阅对象?

根据规范

应用服务器可以使用描述的方法[VAPID]自愿向推送服务标识自己

如果公钥仅用于向推送服务标识服务器并且仅用于将订阅对象发送到推送服务,为什么还要在VAPID内部使用公钥service workers来创建对象?subscription