我有一些项目可以与GCM一起发送网络推送(https://curiosity-driven.org/push-notifications),使用从浏览器/用户收集的令牌/端点。
function subscribe() {
return serviceWorker.ready.then(function(registration) {
return registration.pushManager.subscribe({
userVisibleOnly: true
});
}).then(function(subscription) {
return subscription.endpoint; //Stored in DB
});
}
但在Firebase中,我们还需要一些 p256dh 和 auth 键来发送通知。有没有办法从现有(旧)GCM令牌/端点获取这些密钥?
答案 0 :(得分:1)
在Firebase中,我们还需要一些p256dh和auth密钥来发送通知
那不是真的。您只需要这些密钥来发送带有通知的有效负载(否则您只能发送信号然后从服务器获取通知)。您可能会将有效负载的密钥与VAPID密钥混淆。
有没有办法从现有(旧)GCM令牌/端点获取这些密钥?
没有。您需要使用Javascript从客户端再次阅读订阅。