使用 curl 命令发送推送通知时出现无效注册错误

Posted

技术标签:

【中文标题】使用 curl 命令发送推送通知时出现无效注册错误【英文标题】:Invalid registration error on sending push notification using curl command 【发布时间】:2016-10-31 08:21:33 【问题描述】:

我已经编写了客户端代码以在我的网络应用程序中使用服务工作者接收推送通知,我在本地主机上运行该应用程序。如何调用通知。我已经包含了一个带有 sender_id 的 manifest.json。

从命令行发送请求让 FCM 推送消息,引用 https://developers.google.com/web/fundamentals/getting-started/codelabs/push-notifications/ 在终端执行 curl 命令时,出现无效注册错误。

"multicast_id":xxxxxxxxx,"success":0,"failure":1,"canonical_ids":0,"results":["error":"InvalidRegistration"]

我已验证服务器密钥和端点订阅 ID,它们是正确的。但问题是什么?

我使用 chrome 网络服务器托管了我的应用程序,但如何发送推送通知?

我创建了一个示例项目 Sample-App,我将它托管在 chrome 网络服务器 http://127.0.0.1:8888 上,并在 firebase 中创建了具有 Sample-App 名称的项目,该名称将生成 API 服务器密钥和 gcm_sender_id。

我也通过 https url 在 github 上托管我的代码进行了检查,仍然是同样的问题

【问题讨论】:

好吧,请确保 gcm_sender_id 与项目编号匹配,并且授权密钥值与您正在使用的 API 密钥匹配。另外,请检查此SO question,如果它可以帮助您。 同样的问题,但我无法推送消息。我尝试了该帖子中指定的所有解决方案 我也面临同样的问题,按照文档做所有事情,但仍然得到 InvalidRegistration @PushkerYadav 你可以查看我的答案。这行得通。 【参考方案1】:

过去两周我一直在努力解决这个问题。 最后它现在可以工作了。 问题是,在 regId 中,我正在……介于两者之间。那是抛出无效的注册错误。 控制台中的 regid 正在将内容修剪为 ... 在中间。 因此,就在 console.log 之前,您可以检查 reg id,它显示了您可以从 curl 命令使用的完整 id。 它按预期工作。弹出推送通知。

【讨论】:

以上是关于使用 curl 命令发送推送通知时出现无效注册错误的主要内容,如果未能解决你的问题,请参考以下文章

发送推送通知时出现 Worklight 错误

使用 notnoopapns 向 apns 发送推送通知时出现 ssl 错误

注册 iOS Twilio Voice Client 时出现推送通知错误

在 GCM 中发送推送通知时出现未经授权的错误

从 PHP 发送推送通知时出现主键错误

在向数千名用户发送 android 推送通知时出现 405 错误