880
阿裏雲
批量發送消息__隊列接口規範_API使用手冊_消息服務-阿裏雲
描述
該接口用於批量發送消息到指定的隊列,一次 BatchSendMessage 最多發送16條消息。普通消息發送到隊列隨即可被消費者消費,如果生產者發送一個消息不想馬上被消費者消費(典型的使用場景為定期任務),生產者在發送消息時設置 DelaySeconds 參數就可以達到此目標。發送帶 DelaySeconds 參數值大於0的消息初始狀態為Delayed,此時消息不能被消費者消費,隻有等 DelaySeconds 時間後消息變成 Active 狀態後才可消費。發送消息時指定 DelaySeconds 參數的優先級高於延時消息隊列的 DelaySeconds 屬性,即兩個 DelaySeconds 屬性設置的值不同時以發送消息時指定的值為準。
Request
Request的構造主要由以下幾個部分組成:
請求行
POST /queues/$queueName/messages HTTP/1.1
特有Request Header
無,請參考 調用方式/公共參數
Request Body
Request Body為XML格式,其中包含多條創建Message的屬性。
參數名稱 | 說明 | 參數值 | 選項 |
---|---|---|---|
MessageBody | 消息正文 | UTF-8字符集 | Required |
DelaySeconds | DelaySeconds 指定的秒數延後可被消費,單位為秒 | 0-604800秒(7天)範圍內某個整數值,默認值為0 | Optional |
Priority | 指定消息的優先級權值,優先級越高的消息,越容易更早被消費 | 取值範圍1~16(其中1為最高優先級),默認優先級為8 | Optional |
Response
返回消息由返回狀態行,HTTP頭和消息體三部分組成。
HTTP Status Code
HTTP/1.1 201 Created
特有Response Header
無,請參考 調用方式/公共參數
Response Body
返回的結果為XML格式,返回多條Message的MessageId和MessageBodyMD5子元素。
參數名稱 | 說明 |
---|---|
MessageId | 消息編號,在一個隊列唯一 |
MessageBodyMD5 | 消息正文的MD5值 |
Special Error:
錯誤代碼 | 錯誤消息 | 狀態碼 |
---|---|---|
QueueNotExist | The queue name you provided is not exist. | 404 |
MalformedXML | The XML you provided was not well-formed. | 400 |
InvalidArgument | The value of Element should between Low and High seconds/bytes. | 400 |
請求示例:
POST /queues/$queueName/messages HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 18 Mar 2012 12:00:00 GMT
Content-Length:500
Content-Type:text/xml;charset=utf-8
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE
<?xml version="1.0" encoding="UTF-8"?>
<Messages xmlns="https://mns.aliyuncs.com/doc/v1/">
<Message>
<MessageBody>Message1 Base64 Encoded Result</MessageBody>
<DelaySeconds>60</DelaySeconds>
<Priority>1</Priority>
</Message>
<Message>
<MessageBody>Message2 Base64 Encoded Result</MessageBody>
<DelaySeconds>60</DelaySeconds>
<Priority>1</Priority>
</Message>
</Messages>
返回頭示例:
正常發送所有消息
HTTP/1.1 201 Created
Content-Length:120
Content-Type:text/xml;charset=utf-8
x-mns-request-id:512B2A634403E52B1956133E
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="UTF-8"?>
<Messages xmlns="https://mns.aliyuncs.com/doc/v1/">
<Message>
<MessageId>5F290C926D472878-2-14D9529A8FA-200000001</MessageId>
<MessageBodyMD5>C5DD56A39F5F7BB8B3337C6D11B6D8C7</MessageBodyMD5>
</Message>
<Message>
<MessageId>5F290C926D472878-2-14D9529A8FA-200000002</MessageId>
<MessageBodyMD5>377AC5283D8765C9CEE4E0EA353DFC17</MessageBodyMD5>
</Message>
</Messages>
隻發送了部分消息
HTTP/1.1 500
Content-Length:120
Content-Type:text/xml;charset=utf-8
x-mns-request-id:512B2A634403E52B1956133E
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="UTF-8"?>
<Messages xmlns="https://mns.aliyuncs.com/doc/v1/">
<Message>
<MessageId>5F290C926D472878-2-14D9529A8FA-200000001</MessageId>
<MessageBodyMD5>C5DD56A39F5F7BB8B3337C6D11B6D8C7</MessageBodyMD5>
</Message>
<Message>
<MessageId>5F290C926D472878-2-14D9529A8FA-200000002</MessageId>
<MessageBodyMD5>377AC5283D8765C9CEE4E0EA353DFC17</MessageBodyMD5>
</Message>
<Message>
<ErrorCode>InternalError</ErrorCode>
<ErrorMessage>Internal error.</ErrorMessage>
</Message>
</Messages>
最後更新:2016-11-23 17:16:09
上一篇:
RESTfulAPI概述__隊列接口規範_API使用手冊_消息服務-阿裏雲
下一篇:
批量消費消息__隊列接口規範_API使用手冊_消息服務-阿裏雲
SetRule__轉發規則相關API_API 參考_負載均衡-阿裏雲
時間日期類型__數據類型_SQL語法參考_雲數據庫 OceanBase-阿裏雲
特征工程__使用手冊(new)_機器學習-阿裏雲
HTTP 域名__HTTP 接入(簡單)_消息隊列 MQ-阿裏雲
移動數據分析__iOS SDK手冊_SDK 手冊_-阿裏雲
添加數據源__數據建模_Quick BI-阿裏雲
MXNet 最佳實踐__深度學習最佳實踐_高性能計算-阿裏雲
PutBucketReferer__關於Bucket的操作_API 參考_對象存儲 OSS-阿裏雲
雲服務器 ECS獨立雲磁盤和可用區FAQ
DescribeHealthStatus__BackendServer相關API_API 參考_負載均衡-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲