9

我正在使用新的 Firebase 平台。我正在尝试获取我的应用服务器发送的推送通知并发送到我的 iPhone。

我的设置工作正常,我在网站上的 Firebase 通知区域手动发送消息,但是当我尝试通过 POST 将消息发送到https://fcm.googleapis.com/fcm/send时,我没有收到任何消息传送到设备。

我正在发送以下内容(带有身份验证标头)

{ "notification": {
    "title": "Portugal vs. Denmark",
    "text": "5 to 1"
  },
  "to" : "<registration token>"
  }

我收到来自 POST 的 200 响应,正文如下:

    {
  "multicast_id": 5511974093763495964,
  "success": 1,
  "failure": 0,
  "canonical_ids": 0,
  "results": [
    {
      "message_id": "0:1463685441784359%3ad254b53ad254b5"
    }
  ]
}

如果我尝试通过 Firebase 网站直接发送到此设备,它可以工作,但上面的表单帖子没有。不知道从这里去哪里!

4

4 回答 4

34

在 iOS 上,该priority字段似乎是强制性的。

{   
  "to": "cHPpZ_s14EA:APA91bG56znW...",
  "priority": "high",
  "notification" : {
    "body" : "hello!",
    "title": "afruz",
    "sound": "default"
  }
} 
于 2016-05-31T15:38:57.570 回答
1

如果 API 返回 a message_id,则表示您的消息已被正确接受,并且最终将传送到设备。

  • 在 Android 上,消息会尽快传递(当然前提是设备已连接)。

  • 在 Apple 设备上,如果应用程序已关闭或在后台,则通知将通过 Apple 基础架构发送,并且可以通过 Apple 文档相应地延迟。

要减少发送到 Apple 设备的优先级消息的延迟,您可以使用该priority参数。更多详细信息:https ://firebase.google.com/docs/cloud-messaging/concept-options#setting-the-priority-of-a-message

于 2016-05-20T06:09:51.877 回答
1

我发现该message字段是必需的,以及priority使用 POST 传递消息的字段。

message在 Firebase 控制台中不是必需的(并且标记为可选)。

于 2016-09-04T01:24:41.603 回答
1

我解决了notification在没有priority.

这是一个回顾: 在此处输入图像描述

于 2016-12-20T09:04:30.237 回答