owe*_*ncm 3 service-worker web-push progressive-web-apps
我正在尝试在渐进式网络应用程序中实现推送通知,并在 Chrome 中使用新的有效负载支持。
我正在尝试将端点和密钥发送到服务器,但在 PushSubscription 对象上看不到 keys 属性...
如何访问密钥以便将它们发送到服务器?
密钥可用,但正如您所注意到的,不能直接以这种方式使用。
您可以选择:
JSON.stringify(subscription)将创建一个包含序列化键的字符串(JSON.parse如果你真的想要的话,你可以这样做),或者subscription.getKey('p256dh'),它返回一个 ArrayBuffer,然后自己将其转换为字符串,例如btoa(String.fromCharCode.apply(null, new Uint8Array(subscription.getKey('p256dh'))))请注意,第一种方法创建“URL 安全 Base 64”编码密钥,而第二种方法创建“Base 64(非 URL 安全)”。虽然 web-push Node 库将接受键的任一编码,但您可能需要小心为库选择哪种编码。
| 归档时间: |
|
| 查看次数: |
1189 次 |
| 最近记录: |