如何从SQS队列响应获取receipt_handle?解决下标访问报错
如何从SQS Message对象中正确获取receipt_handle?
你遇到的问题是因为sqs.Message是boto3封装的实例对象,而非字典类型,所以不能通过下标[]来访问它的属性。正确的方式是直接通过点语法访问实例的receipt_handle属性。
正确代码示例:
messages = queue.receive_messages() # 先判断队列是否返回了消息,避免索引越界报错 if messages: message = messages[0] receipt_handle = message.receipt_handle print(receipt_handle)
如果需要查看该对象的所有可用属性,可通过print(dir(message))列出所有属性和方法,方便后续获取其他字段(比如消息体message.body)。
内容的提问来源于stack exchange,提问作者User2603
相关产品推荐
相关产品推荐

