我有一个注册服务工作者的Web应用程序,该服务工作者在推送服务器(FCM)中注册。
服务注册后,我将浏览器提供的url(端点)发送到我的服务器,并将其存储在数据库中。
当我需要通知用户时,Mozilla的URL不同,并且对FCM的调用不起作用。
这样的网址: https://updates.push.services.mozilla.com/wpush/v2/abcde...123
我试图通过提供Mozilla URL(v2之后的URL部分)的“令牌”来调用FCM URL,但是它不起作用。我收到以下消息“请求未验证无效令牌”。我知道我们不应该呼叫FCM URL。
因此,我尝试调用mozilla网址,但收到一条错误消息,要求我进行身份验证:“请求未验证缺少的授权头”和帮助网址:
http://autopush.readthedocs.io/en/latest/http.html#error-codes
所以我尝试遵循文档中的说明:
我用作网址:https://updates.push.services.mozilla.com/v1/fcm/mysenderid
在发布请求的正文中,我发送了Mozilla URL令牌(我看不到还要发送什么?)
{“ token”:“ abcde ... 123”}
但是我仍然收到错误消息“请求未验证无效的路由器”
我试图将我的私钥和公钥作为令牌发送,但是它没有任何改变,我什至试图不发送令牌,并且错误仍然相同,好像我作为令牌参数发送的数据不好一样。但这是浏览器唯一给我的东西,我无话可发送。
因此,无论发生什么情况,我都无法使他们的API正常工作。在其他地方,我读到有必要使用VAPID调用Mozilla推入URL,对此链接https://blog.mozilla.org/services/2016/04/04/using-vapid-with-webpush/
的引用但是我不明白,这与我要调用的推送URL完全无关。
没有简单的方法吗?几年前,我实现了这项服务,没有任何问题,可以在不进行任何身份验证的情况下调用该URL。
感谢您的帮助。