AWS sqs 从 cli 发送消息批处理
AWS sqs send message batch from cli
我正在尝试使用 aws cli 从命令行发送一批消息。命令如下所示:
aws sqs send-message-batch \
--queue-url https://sqs.us-west-2.amazonaws.com/... \
--region=us-west-2 \
--cli-input-json "[{\"Id\":\"1\",\"MessageBody\":\"[344ED079FC85292446B193170E02F6C51882A761]\"},{\"Id\":\"2\",\"MessageBody\":\"[B584291B654587C7C957E10DF8B50FB31B2F589E]\"}]"
问题是 returns 错误代码 255:
'list' object has no attribute 'keys'
知道我做错了什么吗?
你们很亲近!
cli 帮助对此有点模糊,但是 --entries
参数的参数可以直接使用 JSON 或 shorthand 语法提供(没有 cli-input-json ).所以你的命令应该是这样的:
aws sqs send-message-batch \
--queue-url https://sqs.us-west-2.amazonaws.com/... \
--region=us-west-2 \
--entries "[{\"Id\":\"1\",\"MessageBody\":\"[344ED079FC85292446B193170E02F6C51882A761]\"},{\"Id\":\"2\",\"MessageBody\":\"[B584291B654587C7C957E10DF8B50FB31B2F589E]\"}]"
--cli-input-json
参数是所有 cli 命令上可用的可选参数,它允许您为命令提供所有参数(不是单个参数)作为 json。在这种情况下是不必要的
我正在尝试使用 aws cli 从命令行发送一批消息。命令如下所示:
aws sqs send-message-batch \
--queue-url https://sqs.us-west-2.amazonaws.com/... \
--region=us-west-2 \
--cli-input-json "[{\"Id\":\"1\",\"MessageBody\":\"[344ED079FC85292446B193170E02F6C51882A761]\"},{\"Id\":\"2\",\"MessageBody\":\"[B584291B654587C7C957E10DF8B50FB31B2F589E]\"}]"
问题是 returns 错误代码 255:
'list' object has no attribute 'keys'
知道我做错了什么吗?
你们很亲近!
cli 帮助对此有点模糊,但是 --entries
参数的参数可以直接使用 JSON 或 shorthand 语法提供(没有 cli-input-json ).所以你的命令应该是这样的:
aws sqs send-message-batch \
--queue-url https://sqs.us-west-2.amazonaws.com/... \
--region=us-west-2 \
--entries "[{\"Id\":\"1\",\"MessageBody\":\"[344ED079FC85292446B193170E02F6C51882A761]\"},{\"Id\":\"2\",\"MessageBody\":\"[B584291B654587C7C957E10DF8B50FB31B2F589E]\"}]"
--cli-input-json
参数是所有 cli 命令上可用的可选参数,它允许您为命令提供所有参数(不是单个参数)作为 json。在这种情况下是不必要的