sqs boto3:地址'https://us-west-2.queue.amazonaws.com/xxxx/my-name'对此终端节点无效



我很难找到如何在boto3中正确配置sqs,以便能够向我的sqs队列发送消息。boto3和遗留端点之间似乎存在一些混淆,但对于我能想象到的配置的每个排列,我都会收到错误消息The address 'https://us-west-2.queue.amazonaws.com/xxxx/my-name' is not valid for this endpoint.。这是代码。

# Tried both of these
sqs_queue_url = 'https://sqs.us-west-2.amazonaws.com/xxxx/my-queue'
sqs_queue_url = 'https://us-west-2.queue.amazonaws.com/xxxx/my-queue'
# Tried both of these 
sqs = boto3.client("sqs", endpoint_url="https://sqs.us-west-2.amazonaws.com")
sqs = boto3.client("sqs")
# _endpoint updates
logger.info("sqs endpoint: %s", sqs._endpoint)
# Keeps failing
sqs.send_message(QueueUrl=sqs_queue_url, MessageBody=message_json)

我希望这是个愚蠢的错误。我缺少什么配置?

从文档、AWS CLI和Python SDK使用遗留端点

如果使用AWS CLI或SDK for Python,则可以使用以下遗留端点。

此外,当您设置端点时,您需要添加https:

sqs = boto3.client("sqs", endpoint_url="https://us-west-2.queue.amazonaws.com")

相关内容

最新更新