1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 你通过JSONPath设置参数的方法看起来不错(我在下面附上了一个示例),所以 MessageAttributes
应该等于 messageAttributes
。你能在执行日志中验证一下吗?
更新:
阅读了您的回复后,我认为问题在于属性区分大小写,您正在发送 stringValue
而不是 StringValue
。不管怎样,我编码了一个步函数,从队列A中读取并将消息保留在队列B中。希望这能帮到你。
Step Function definition
{
"Comment": "Example",
"StartAt": "Receive Message From Queue A",
"States": {
"Receive Message From Queue A": {
"Type": "Task",
"Parameters": {
"QueueUrl": "REPLACE_WITH_YOUR_SQS_URL",
"MessageAttributeNames": [
"All"
]
},
"Resource": "arn:aws:states:::aws-sdk:sqs:receiveMessage",
"Next": "Map"
},
"Map": {
"Type": "Map",
"ItemProcessor": {
"ProcessorConfig": {
"Mode": "INLINE"
},
"StartAt": "Send Message To Queue B",
"States": {
"Send Message To Queue B": {
"Type": "Task",
"Resource": "arn:aws:states:::sqs:sendMessage",
"Parameters": {
"QueueUrl": "REPLACE_WITH_YOUR_SQS_URL",
"MessageBody.$": "$.Body",
"MessageAttributes.$": "$.MessageAttributes"
},
"End": true
}
}
},
"ItemsPath": "$.Messages",
"End": true
}
}
}
相关内容
- AWS 官方已更新 1 年前
- AWS 官方已更新 9 个月前
- AWS 官方已更新 7 个月前
- AWS 官方已更新 1 年前