关于WebPush通知和Service Workers,我有几个问题:
授权许可在网站上持续多久?
包含WebPush端点和密钥的订阅对象是否会变更?
如果发生变化,如何知道它已经更改?
订阅对象是否应随时重新生成?
非常感谢。
关于WebPush通知和Service Workers,我有几个问题:
授权许可在网站上持续多久?
包含WebPush端点和密钥的订阅对象是否会变更?
如果发生变化,如何知道它已经更改?
订阅对象是否应随时重新生成?
非常感谢。
这是你问题的答案!
- 一个网站获得的许可证持续多长时间?
始终检查使用通知API的权限。重要的是要不断检查是否已经授予权限,因为状态可能会变化。用户可以手动禁用权限,因此每次都要检查以避免破坏代码。
- 包含Web推送端点和密钥的订阅对象是否会更改?
- 如果更改了,我怎么知道它已经更改?
您的服务器需要生成一对应用程序服务器密钥-也称为VAPID密钥,这些密钥对于您的服务器是唯一的。它们是公钥和私钥的一对。私钥在您这一端秘密存储,而公钥与客户端交换。这些密钥允许推送服务知道哪个应用程序服务器订阅了用户并确保发送推送消息到特定用户的是同一台服务器。
您只需要为应用程序创建一次私钥/公钥对。一种方法是转到https://web-push-codelab.glitch.me/。
终端节点和公钥将保持不变,因此无需更改。