閱讀942 返回首頁    go iPhone_iPad_Mac_手機_平板_蘋果apple


Notification操作__主題接口規範_API使用手冊_消息服務-阿裏雲

描述

MNS 通過發送 POST 請求將 Notifications 推送到 Endpoint 端,Notifications 格式支持兩種:XML 完整格式和 SIMPLIFIED 精簡格式。
XML 完整格式會在 Request Body 中包含推送消息的正文和消息的 Meta 信息;
SIMPLIFIED 精簡格式的 Request Body 即為用戶的消息正文,不做任何改動,MessageId 會在 Request Header 中傳遞給用戶。

Request

Request 的構造由以下幾個部分組成:

  • 請求行

    POST /notifications HTTP/1.1
    默認是 /notifications,如果訂閱者在創建 Subscription 時指定的 Endpoint 包含 URI,會使用用戶設置的 URI 替換 /notifications

  • 特有 URI 參數

  • 特有 Request Header

參數名稱 說明 備注
Authorization 此次推送請求的簽名 XML 和 SIMPLIFIED格式下均有
x-mns-signing-cert-url 簽名證書的地址(Base64編碼過) XML 和 SIMPLIFIED格式下均有
x-mns-request-id 此次推送消息的 Request 編號 XML 和 SIMPLIFIED格式下均有
x-mns-message-id 此次推送消息的 MessageId SIMPLIFIED格式下有
x-mns-message-tag 此次推送消息的消息標簽 SIMPLIFIED格式下有
  • Request Body

    XML 格式下,Request Body 為 XML 格式,包含消息正文和 Meta 信息。

參數名稱 說明
TopicOwner 被訂閱主題的擁有者
TopicName 被訂閱主題的名稱
Subscriber 訂閱者
SubscriptionName 訂閱名稱
MessageId 消息編號
Message 消息正文
MessageMD5 消息的 MD5 值
MessageTag 消息標簽(用於消息過濾)
PublishTime 消息的發布時間,從 1970-1-1 00:00:00 000 到消息發布時的毫秒值
SigningCertURL 簽名證書的地址(僅XML格式有,注:不建議使用,僅為兼容內測用戶,7月份將不再支持

精簡格式下,Request Body 為發布者發布的消息正文。

Response

返回消息由返回狀態行、HTTP頭和消息體三部分組成

  • HTTP Status Code

    HTTP/1.1 204 No Content
    正常處理通知消息,返回 204;
    請求簽名驗證不通過,返回 403;
    其他任何錯誤,返回 500。

  • 特有 Response Header

  • Response Body

請求示例:

XML 格式

  1. POST /notifications HTTP/1.1
  2. Host: company.com
  3. Date: Tue, 08 Dec 2015 06:42:00 GMT
  4. Content-Length: 300
  5. Content-Type: text/xml;charset=utf-8
  6. Content-MD5: OGQzNjAwYjIwMWFiMTliZDlhNzc4YjAwZjc5MGQ4NDE=
  7. Authorization: QSNS+vn3IqJI4lOh4X/dxTv7Qebi/wrEaBJlzFFTc0hJVRUmrHLQo24ojBUETpz48+jrsjxMGPJTILDw752Jww==
  8. User-Agent: Aliyun Notification Service Agent
  9. x-mns-request-id: 56667BB81FD0E7D1200024A0
  10. x-mns-version: 2015-06-06
  11. x-mns-signing-cert-url: aHR0cDovL21uc3Rlc3Qub3NzLWNuLWhhbmd6aG91LmFsaXl1bmNzLmNvbS94NTA5X3B1YmxpY19jZXJ0aWZpY2F0ZS5wZW0=
  12. <?xml version="1.0" encoding="utf-8"?>
  13. <Notification xlmns="https://mns.aliyuncs.com/doc/v1/">
  14. <TopicOwner>$TopicOwner</TopicOwner>
  15. <TopicName>$TopicName</TopicName>
  16. <Subscriber>$Subscriber</Subscriber>
  17. <SubscriptionName>$SubscriptionName</SubscriptionName>
  18. <MessageId>6CC4D900CA59A2CD-1-15180534A8F-200000002</MessageId>
  19. <Message>{1:"a", 2:"b"}</Message>
  20. <MessageMD5>F1E92841751D795AB325861034B5CB55</MessageMD5>
  21. <MessageTag>important</MessageTag>
  22. <PublishTime>1449556920975</MessagePublishTime>
  23. </Notification>

SIMPLIFIED 格式

  1. POST /notifications HTTP/1.1
  2. Host: company.com
  3. Date: Tue, 15 Dec 2015 09:12:46 GMT
  4. Content-Length: 487
  5. Content-Type: text/plain;charset=utf-8
  6. Content-MD5: NmY4Njk0MzlmNzg3NTFkMTJiN2M5OWE4ZmYzNTU4ZWQ=
  7. Authorization: aXZIpRkRmIavmwceCyrPatB7SaEbOJdWpmFWYX3nFwtmaixK/M/3kl1njY0pgM7mrIB7NlBv5NfUZNkcIjlO4A==
  8. User-Agent: Aliyun Notification Service Agent
  9. x-mns-message-id: 6CC4D900CA59A2CD-1-15180534A8F-200000002
  10. x-mns-message-tag: important
  11. x-mns-request-id: 566FD963B2B71C44481F701A
  12. x-mns-signing-cert-url: aHR0cDovL21uc3Rlc3Qub3NzLWNuLWhhbmd6aG91LmFsaXl1bmNzLmNvbS94NTA5X3B1YmxpY19jZXJ0aWZpY2F0ZS5wZW0=
  13. x-mns-version: 2015-06-06
  14. {1:"a", 2:"b"}

返回示例:

  1. HTTP/1.1 204 No Content

最後更新:2016-11-23 17:16:04

  上一篇:go Message操作__主題接口規範_API使用手冊_消息服務-阿裏雲
  下一篇:go 錯誤響應格式__錯誤響應_API使用手冊_消息服務-阿裏雲