使用发送消息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>