使用 Parse Server 的 FCM 推送通知

Posted

技术标签:

【中文标题】使用 Parse Server 的 FCM 推送通知【英文标题】:FCM push notifications with Parse Server 【发布时间】:2017-03-31 16:55:54 【问题描述】:

这很复杂,但我会尽量简洁。我正在使用 FCM 向 android 设备发送推送通知。我的后端是解析服务器。我可以成功地将推送从 FCM 控制台发送到设备。当我从 parse 向https://mybackend/parse/push 发送推送时,它会显示 "result": "true" 作为响应。我检查了服务器日志,它(可以预见)说所有对 /parse/push 的 http post 请求都成功了 200。

但是,从 parse 发送(使用 curl 或 parse push 控制台)时,推送不会显示在 FCM 控制台中。那么解析服务器和 FCM 之间存在一些问题。

在我的 index.js 中,我有:

push: 
  android: 
    senderId: "XXXXX",
    apiKey: "YYYYYY"
   

我有钥匙,一切都按照这里:http://parseplatform.org/docs/parse-server/guide/#push-notifications

我还缺少什么?为什么我不能让它真正出现在设备上?非常感谢任何帮助,谢谢。

【问题讨论】:

【参考方案1】:

为 Android 应用程序设置 Parse Server,我记得必须仔细检查才能正确设置。对我来说关键是:当我登录 Firebase 控制台并选择我正在使用的应用程序,然后单击齿轮 [或 cog 或其他] 和项目设置时,我必须确保单击云消息传递选项卡并获取旧版服务器密钥 [在项目凭据下] 而不是出现在常规选项卡上的 web api 密钥。您要使用的发件人 ID 也会显示在该页面上。

我不确定他们何时会弃用旧版服务器密钥,您可以尝试使用服务器密钥,但一定要确保您从云消息传递选项卡中获取信息。

我不知道为什么 FCM(和 APNs)在未正确设置密钥(或证书)时不发送不同的消息 [这至少对开发人员更友好] 而是只发送 200但我的猜测是他们在收到预期的通知并发送响应后评估密钥 [或证书]。

【讨论】:

我尝试了服务器旧密钥,但不幸的是我仍然遇到同样的问题。不过感谢您的建议。 伙计,你不知道你刚刚为我节省了多少时间。我在一个悲惨的夜晚度过了 7 个多小时,而你刚刚救了我。对于那些尝试添加 Parse Server + Android Push Notifications 的人,您需要使用上面 Pacificpelican 指定的 LEGACY SERVER KEY。真的谢谢你!!!!!!!太感谢你了!!我不敢相信这没有任何赞成票......哇。

以上是关于使用 Parse Server 的 FCM 推送通知的主要内容,如果未能解决你的问题,请参考以下文章

GCM“升级”为FCM

FCM 与 Prase-server 托管在 AWS EC2 上

使用 FCM 推送通知 IOS

如何不向不想接收推送的用户发送FCM?

php 简单的PHP FireBase(FCM)脚本,显示如何发送Android推送通知。请务必使用prope替换SERVER_API_ACCESS_KEY

在 Android 8.0 中未显示使用 parse sdk 的推送通知