基本信息
Name | Value |
[backcolor=transparent]API | BatchSendMessage |
[backcolor=transparent]RAM授权操作 | mns:BatchSendMessage |
[backcolor=transparent]资源 | acs:mns:$region:$accountid:/queues/$queueName/messages |
该接口用于批量发送消息到指定的队列,一次 BatchSendMessage 最多发送16条消息(一次batch请求的消息总大小不得超过64K字节)。普通消息发送到队列随即可被消费者消费,如果生产者发送一个消息不想马上被消费者消费(典型的使用场景为定期任务),生产者在发送消息时设置 DelaySeconds 参数就可以达到此目标。发送带 DelaySeconds 参数值大于0的消息初始状态为Delayed,此时消息不能被消费者消费,只有等 DelaySeconds 时间后消息变成 Active 状态后才可消费。发送消息时指定 DelaySeconds 参数的优先级高于延时消息队列的 DelaySeconds 属性,即两个 DelaySeconds 属性设置的值不同时以发送消息时指定的值为准。
POST /queues/$queueName/messages HTTP/1.1
无,请参考 [backcolor=transparent]调用方式/公共参数
Request Body为XML格式,其中包含多条创建Message的属性。
参数名称 | 说明 | 参数值 | 选项 |
MessageBody | 消息正文 | UTF-8字符集 | Required |
DelaySeconds | DelaySeconds 指定的秒数延后可被消费,单位为秒 | 0-604800秒(7天)范围内某个整数值,默认值为0 | Optional |
Priority | 指定消息的优先级权值,优先级越高的消息,越容易更早被消费 | 取值范围1~16(其中1为最高优先级),默认优先级为8 | Optional |
HTTP/1.1 201 Created
无,请参考 [backcolor=transparent]调用方式/公共参数
返回的结果为XML格式,返回多条Message的MessageId和MessageBodyMD5子元素。
参数名称 | 说明 |
MessageId | 消息编号,在一个队列唯一 |
MessageBodyMD5 | 消息正文的MD5值 |
错误代码 | 错误消息 | 状态码 |
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 |
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云的MNS(Message Service)提供了API BatchSendMessage,允许用户批量发送消息到指定的队列中。以下是对您提供信息的一个总结和补充说明:
DelaySeconds
参数来延时消息的消费,即消息在被发送后不会立即被消费者获取,而是在指定的秒数后变为可消费状态。Priority
参数可以设定消息的优先级,数值范围1至16,其中1为最高优先级。/queues/$queueName/messages
MessageBody
、DelaySeconds
、Priority
等。201 Created
。MessageId
和MessageBodyMD5
,用于后续追踪和验证消息完整性。DelaySeconds
不在允许的秒数内,状态码400。虽然示例代码未直接给出,但根据上述信息,您可以构建一个POST请求,设置相应的Header(包括认证信息等),并在Body中编写符合要求的XML数据来调用此接口。确保在调用前已正确配置了RAM角色以授权执行mns:BatchSendMessage
操作,并且了解目标队列的确切路径(acs:mns:$region:$accountid:/queues/$queueName
)。
更多关于如何构造请求、处理响应以及错误处理的详细信息,建议参考阿里云官方文档中的MNS产品手册或API参考,这些资源会提供完整的请求示例、错误代码列表及解决方案。