全部产品
Search
文档中心

轻量消息队列(原 MNS):ChangeMessageVisibility

更新时间:Sep 21, 2026

调用ChangeMessageVisibility接口,修改被消费过并且还处于Inactive状态的消息与其下次可被消费的时间间隔。

授权信息

默认仅限阿里云账号使用本接口,RAM用户只有在被授予了相关API操作权限后方可使用。本接口的授权信息如下表所示。更多信息,请参见授权策略和示例。

Name

Value

API

ChangeMessageVisibility

RAM授权操作

mns:ChangeMessageVisibility

资源

acs:mns:$region:$accountid:/queues/$queueName/messages

请求消息

请求消息由请求行、URL参数、HTTP头和消息体四部分组成:

  • 请求行

    PUT /queues/$queueName/messages?receiptHandle=<receiptHandle>&visibilityTimeout=<visibilitytimeout> HTTP/1.1

  • URI参数

    参数名称

    类型

    是否必选

    示例值

    描述

    ReceiptHandle

    String

    是

    MbZj6wDWli+QEauMZc8ZRv37sIW2iJKq3M9Mx/KSbkJ0

    上次消费后返回的消息的ReceiptHandle。更多信息,请参见ReceiveMessage。

    VisibilityTimeout

    Integer

    是

    50

    将消息的可见性超时时间设置为当前入参值,单位:秒。

    取值范围 [1, 43200]秒,即1秒~12小时。

  • 特有Request Header

    无。

  • Request Body

    无。

返回消息

返回消息由返回状态行、HTTP头和消息体三部分组成:

  • HTTP Status Code

    HTTP/1.1 200 OK

  • 特有Response Header

    无。

  • Response Body

    参数名称

    类型

    示例值

    说明

    ReceiptHandle

    String

    TbZj6wDWli+9CEauMZc8ZRv37sIW2iJKq3M9Mx/TS1

    本次修改消息VisibilityTimeout时返回的临时句柄,用于删除和修改状态为Inactive的消息,在NextVisibleTime时间之前有效。

    NextVisibleTime

    Long

    1250700979298000

    下次可被再次消费的时间,取值为从1970年01月01日00:00:00 000开始的毫秒数。

示例

请求示例:

PUT /queues/$queueName/messages
?receiptHandle=MbZj6wDWli+QEauMZc8ZRv37sIW2iJKq3M9Mx/KSbkJ0&visibilityTimeout=50 HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 28 May 2012 22:32:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXA****           

返回示例:

HTTP/1.1 200 OK
x-mns-request-id:512B2A634403E52B1956****
x-mns-version: 2015-06-06

<?xml version="1.0" encoding="UTF-8"?>
<ChangeVisibility xmlns="http://mns.aliyuncs.com/doc/v1/">
    <ReceiptHandle>TbZj6wDWli+9CEauMZc8ZRv37sIW2iJKq3M9Mx/TS1</ReceiptHandle >
    <NextVisibleTime>1250700979298000</NextVisibleTime>
</ChangeVisibility>            

错误码

错误码

错误信息

HTTP状态码

描述内容

InvalidArgument

The value of Element must be between Low and High seconds/bytes.

400

参数值非法,请根据提示调整。

ReceiptHandleError

The receipt handle you provided is not valid.

400

请求参数不合法。

QueueNotExist

The queue name you provided does not exist.

404

队列不存在,请先创建队列。

MessageNotExist

The receipt handle you provided has expired.

404

消费消息过慢导致消息重新回到队列生成新的ReceiptHandle,之前的ReceiptHandle失效。请加快消费速度或者增加队列的不可见时间。