使用确认消息API确认消息消费状态。
请求构造
请求行
DELETE /topics/TopicName/messages?ns=INSTANCE_ID&consumer=GID HTTP/1.1
参数说明如下。
参数
是否必选
说明
TopicName
是
将消息发送至的Topic名称。
ns
否
实例ID,针对有命名空间的新建实例,该参数为必填。是否有命名空间可以在控制台实例详情页面查看。实例根据其是否有命名空间分为默认实例和新建实例:
默认实例:无命名空间,所有资源命名必需保证全局唯一。
新建实例:有命名空间,资源命名只需保证在该实例内唯一。
实例命名空间更多信息,请参见实例化支持。
consumer
是
消费者群组标识,即Group ID。
请求内容(XML格式)
请求内容的参数说明如下。
参数
是否必选
说明
ReceiptHandle
是
通过订阅消息API获取到的消息句柄,用于确认消息是否消费成功;句柄用且仅能使用一次,对于同一条消息如果存在重试每次拿到的句柄不同,消息句柄应在NextConsumeTime之前使用。
响应构造
请求成功
响应行
HTTP/1.1 204
响应内容
无
请求失败
响应行
HTTP/1.1 404
响应内容
参见响应示例
示例
请求示例
<?xml version="1.0" encoding="UTF-8"?> <ReceiptHandles xmlns="http://mq.aliyuncs.com/doc/v1/"> <ReceiptHandle>1E057D5E6EAD42A57993704EC383****-MTI5NT****</ReceiptHandle> <ReceiptHandle>1E057D5E6EAD42A57993704EC383****-MTI5NT****</ReceiptHandle> <ReceiptHandle>1E057D5E6EAD42A57993704EC383****-MTI5NT****</ReceiptHandle> </ReceiptHandles>
响应示例
请求的内容中没有句柄。
<?xml version="1.0" ?> <Error xmlns="http://mq.aliyuncs.com/doc/v1"> <Code>MissingReceiptHandle</Code> <Message>ReceiptHandle is required.</Message> <RequestId>5DAEF2B9463541AD6E04490F</RequestId> <HostId>http://123.mqrest.cn-hangzhou.aliyuncs.com</HostId> </Error>
请求的句柄错误,错误的句柄是:
adfadfadf
。<?xml version="1.0" ?> <Errors xmlns="http://mq.aliyuncs.com/doc/v1"> <Error> <ErrorCode>ReceiptHandleError</ErrorCode> <ErrorMessage>The receipt handle you provide is not valid.</ErrorMessage> <ReceiptHandle>adfadfadf</ReceiptHandle> </Error> </Errors>
请求的句柄过期,即使用句柄确认消息的时候超过了消息的NextConsumeTime时间。
<?xml version="1.0" ?> <Errors xmlns="http://mq.aliyuncs.com/doc/v1"> <Error> <ErrorCode>MessageNotExist</ErrorCode> <ErrorMessage>The receipt handle you provided has expired.</ErrorMessage> <ReceiptHandle>1E057D5E6EAD42A57993704EC383****-MTI5NT****</ReceiptHandle> </Error> </Errors>
文档内容是否对您有帮助?