使用发送消息API从生产者发送消息至消息队列RocketMQ版服务端。
请求构造
- 请求行
POST /topics/TopicName/messages?ns=INSTANCE_ID HTTP/1.1
参数说明如下。
参数 是否必选 说明 TopicName 是 将消息发送至的Topic名称。 ns 否 实例ID,针对有命名空间的新建实例,该参数为必填。是否有命名空间可以在控制台实例详情页面查看。实例根据其是否有命名空间分为默认实例和新建实例: - 默认实例:无命名空间,所有资源命名必需保证全局唯一。
- 新建实例:有命名空间,资源命名只需保证在该实例内唯一。
- 请求内容(XML格式)
请求内容的参数说明如下。
参数 是否必选 说明 MessageTag 否 消息Tag。 MessageBody 是 消息内容。 Properties 否 消息属性。 属性(Properties)的序列化,其中特殊用途的键值说明如下:
- 格式:
key1:value1|key2:value2|key3:value3
- 键值说明如下。
参数 类型 说明 KEYS String 消息的Key。 __STARTDELIVERTIME Long 定时消息的定时绝对时间,UNIX毫秒时间戳。 __TransCheckT Long 第一次事务消息的回查时间,相对时间,取值范围:10~300,单位:秒。
- 格式:
响应构造
- 响应行
HTTP/1.1 201
- 响应内容
响应内容的参数说明如下。
参数 类型 说明 MessageId String 消息ID。 MessageBodyMD5 String 消息内容的MD5。
示例
- 请求示例
<?xml version="1.0" encoding="UTF-8"?> <Message xmlns="http://mq.aliyuncs.com/doc/v1/"> <MessageBody>a</MessageBody> <MessageTag>Tag</MessageTag> <Properties>KEYS:MessageKey|__STARTDELIVERTIME:1571388173000</Properties> </Message>
- 响应示例
<Message xmlns="http://mq.aliyuncs.com/doc/v1/"> <MessageId>1E057D566EAD42A579935B5CD874****</MessageId> <MessageBodyMD5>0CC175B9C0F1B6A831C399E26977****</MessageBodyMD5> </Message>