我想在[Firebase Cloud Messaging] [1]上构建推送通知,以受益于同时发送给多个订户。这意味着要创建一个Google帐户和一个Firebase项目。
但是我希望能够将平台转换为普通Push API的用法。区别在于,后者不需要Google帐户,但确实需要通过使用VAPID keys签署请求来对推送服务进行身份验证。
浏览器为您提供如下订阅:
{
"endpoint":"https://fcm.googleapis.com/fcm/send/duhACWCPtgQ:APA91bHJcNGYk8OTjbdcy-YWVkZUtMB9ztwzFlj54KfKGi46wIb9j9z3Gwop3j534rVsNALG3ccXRz-O8uLJZDfosAK4wSh3Jwr6KlMiaipBnglcLb4Z8r3Lc9kMzgrS1KC9jGpPHsn_",
"expirationTime":null,
"keys":{
"p256dh":"BLeAlKXQUMJjX-jeERPg1Jw50g2ro7zxemsjxX9YsgQ6XhKyAlu0v7pOPzcmwh6zyfYRcHCnI3VFzO12e-UNUzE",
"auth":"7o_bNZw4l-6sg85Yt95zqA"
}
}
理论上,我可以将其保存在服务器端,并使用它来推送消息,而无需使用Firebase帐户。
但是不幸的是,它不起作用,因为我需要VAPID key pair来唱歌。我尝试使用their docs中所述的messaging.
,但没有运气:
messaging.usePublicVapidKey("BKagOny0KF_2pCJQ3m....moL0ewzQ8rZu");
基本上,我能够向该订阅者发送推送通知的唯一方法是,如果我使用Firebase Admin SDK,通过Firebase帐户进行身份验证并使用其token
的概念来标识用户,但这就是不是我想要的。
有什么解决方案可以在保留订户的同时关闭Google的FCM?