全部產品
Search
文件中心

:HttpEndpoint

更新時間:Jan 23, 2025

使用HttpEndpoint介面,通過發送POST請求將Notifications推送到Endpoint。

描述

Message ServiceMNS通過發送POST請求將Notifications推送到Endpoint端,Notifications支援兩種格式:

  • 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此次推送訊息的MessageIdSIMPLIFIED格式下有
    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到訊息發布時的毫秒值。

    精簡格式下,Request Body為發行者發布的訊息本文。

Response

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

  • HTTP Status Code

    HTTP/1.1 204 No Content

    • 正常處理通知訊息,返回204;超過5秒未返回204,則認為逾時,對該訊息重試推送。
    • 請求籤名驗證不通過,返回403。
    • 其他任何錯誤,返回500。
  • 特有Response Header

    無。

  • Response Body

    無。

樣本

請求樣本:

  • XML 格式
        POST /notifications HTTP/1.1
        Host: example.com
        Date: Tue, 08 Dec 2015 06:42:00 GMT
        Content-Length: 300
        Content-Type: text/xml;charset=utf-8
        Content-MD5: OGQzNjAwYjIwMWFiMTliZDlhNzc4YjAwZjc5MGQ4****
        Authorization: QSNS+vn3IqJI4lOh4X/dxTv7Qebi/wrEaBJlzFFTc0hJVRUmrHLQo24ojBUETpz48+jrsjxMGPJTILDw752J****
        User-Agent: Aliyun Notification Service Agent
        x-mns-request-id: 56667BB81FD0E7D12000****
        x-mns-version: 2015-06-06
        x-mns-signing-cert-url: aHR0cDovL21uc3Rlc3Qub3NzLWNuLWhhbmd6aG91LmFsaXl1bmNzLmNvbS94NTA5X3B1YmxpY19jZXJ0aWZpY2F0ZS5w****
    
        <?xml version="1.0" encoding="utf-8"?>
        <Notification xlmns="http://mns.aliyuncs.com/doc/v1/">
            <TopicOwner>$TopicOwner</TopicOwner>
            <TopicName>$TopicName</TopicName>
            <Subscriber>$Subscriber</Subscriber>
            <SubscriptionName>$SubscriptionName</SubscriptionName>
            <MessageId>6CC4D900CA59A2CD-1-15180534A8F-20000****</MessageId>
            <Message>{1:"a", 2:"b"}</Message>
            <MessageMD5>F1E92841751D795AB325861034B5****</MessageMD5>
            <MessageTag>important</MessageTag>
            <PublishTime>1449556920975</MessagePublishTime>
        </Notification>
  • SIMPLIFIED 格式
        POST /notifications HTTP/1.1
        Host: example.com
        Date: Tue, 15 Dec 2015 09:12:46 GMT
        Content-Length: 487
        Content-Type: text/plain;charset=utf-8
        Content-MD5: NmY4Njk0MzlmNzg3NTFkMTJiN2M5OWE4ZmYzNTU4****
        Authorization: aXZIpRkRmIavmwceCyrPatB7SaEbOJdWpmFWYX3nFwtmaixK/M/3kl1njY0pgM7mrIB7NlBv5NfUZNkcIjlO****
        User-Agent: Aliyun Notification Service Agent
        x-mns-message-id: 6CC4D900CA59A2CD-1-15180534A8F-20000****
        x-mns-message-tag: important
        x-mns-request-id: 566FD963B2B71C44481F****
        x-mns-signing-cert-url: aHR0cDovL21uc3Rlc3Qub3NzLWNuLWhhbmd6aG91LmFsaXl1bmNzLmNvbS94NTA5X3B1YmxpY19jZXJ0aWZpY2F0ZS5w****
        x-mns-version: 2015-06-06
    
        {1:"a", 2:"b"}

返回樣本:

HTTP/1.1 204 No Content