tencent cloud

消息队列 CMQ 版

动态与公告
产品动态
公告
产品简介
产品概述
产品功能
产品优势
应用场景
使用限制
基本概念
购买指南
计费概述
购买方式
价格总览
欠费说明
退费说明
快速入门
队列模型快速入门
主题模型快速入门
操作指南
队列服务
主题订阅
访问管理 CAM
标签管理
配置告警
消息查询与轨迹
实践教程
消息去重
选择 Push 还是 Pull
案例分享
在线图片处理案例
起点文学网案例
开发指南
HTTP Endpoint 订阅
通用参考
API 文档
API 列表
CMQ API2.0 切换至 TDMQ CMQ 版 API3.0指引
SDK 文档
HTTP 数据流 SDK
HTTP 控制流 SDK
SDK 参数配置说明
常见问题
功能类
操作类
服务等级协议
联系我们
词汇表

批量发布消息

PDF
聚焦模式
字号
最后更新时间: 2024-01-03 10:20:36

接口描述

本接口(BatchPublishMessage)用于发布批量(目前最多16条)消息到指定的主题。
公网/内网接口请求域名,在 TDMQ CMQ 版控制台主题模型 > API 请求地址处复制。CMQ 的 API 调用地址示例如下:
公网地址:https://cmq-gz.publicXXX.tencenttdmq.com
内网地址:http://gz.mqadapter.cmq.tencentyun.com
注意:
不同地域的 API 调用地址 URL 会有所变化。
任何时候(包括内测期间),如果使用外网域名产生公网下行流量,都会收取流量费用。 所以强烈建议服务在腾讯云上的用户使用内网域名,内网不会产生流量费用。

输入参数

以下请求参数列表仅列出了接口请求参数,其它参数请参见 公共请求参数 页面。
参数名称
是否必选
类型
描述
topicName
String
主题名字,在单个地域同一账号下唯一。主题名称是一个不超过64个字符的字符串,必须以字母为首字符,剩余部分可以包含字母、数字和横划线(-)。
msgBody.n
String
消息正文。表示这一批量中的一条消息。目前批量消息数量不能超过16条。
为方便用户使用,n 从0开始或者从1开始都可以,但必须连续,例如发送两条消息,可以是(msgBody.0, msgBody.1),或者(msgBody.1, msgBody.2)。
注意:由于目前限制所有消息大小总和(不包含消息头和其他参数,仅msgBody)不超过64k,所以建议提前规划好批量发送的数量。
msgTag.n
String
消息过滤标签。消息标签(用于消息过滤)。标签数量不能超过5个,每个标签不超过16个字符。与 Subscribe 接口的 filterTag 参数配合使用,规则:
(1)如果 filterTag 没有设置,则无论 msgTag 是否有设置,订阅接收所有发布到 Topic 的消息。
(2)如果 filterTag 数组有值,则只有数组中至少有一个值在 msgTag 数组中也存在时(即 filterTag 和 msgTag 有交集),订阅才接收该发布到 Topic 的消息。
(3)如果 filterTag 数组有值,但 msgTag 没设置,则不接收任何发布到 Topic 的消息,可以认为是(2)的一种特例,此时 filterTag 和 msgTag 没有交集。规则整体的设计思想是以订阅者的意愿为主。
routingKey
String
长度<=64 字节,该字段用于表示发送消息的路由路径,最多含有 15 个“.”, 即最多1 6 个词组。
消息发送到 topic 类型的 exchange 上时不能随意指定 routingKey,需要符合上面的格式要求。一个由订阅者指定的带有 routingKey 的消息将会推送给所有 BindingKey 能与之匹配的消费者,这种匹配情况有两种关系:
1. *(星号):可以替代一个单词(一串连续的字母串)。
2. #(井号):可以匹配一个或多个字符。

输出参数

参数名称
类型
描述
code
Int
0:表示成功,others:错误,详情请参见 公共错误码
message
String
错误提示信息。
requestId
String
服务器生成的请求 ID,出现服务器内部错误时,用户可提交此 ID 给后台定位问题。
msgList
Array
服务器生成消息的唯一标识 ID 列表,每个元素是一条消息的信息。
msgList 定义如下:
参数名称
类型
描述
msgId
String
服务器生成消息的唯一标识 ID。

错误码

详情请参见 公共错误码

示例

输入:
https://domain/v2/index.php?Action=BatchPublishMessage
&topicName=test-topic-123
&msgBody.1=helloworld1
&msgBody.2=helloworld2
&<公共请求参数>
输出:
{
"code" : 0,
"message" : "",
"requestId":"14534664555",
"msgList":
[
{
"msgId":"123345346"
},
{
"msgId":"456436346"
}
]
}


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈