我尝试构建一个step函数,它接收json作为输入,然后在通过该step函数中的SNS发送的消息中只使用该JSON的一部分。我尝试使用一些可用的固有json操作函数,但没有成功。有没有一种方法可以在不使用lambda的情况下为SNS消息提取特定的json字段?
对于消息字段,我希望它为:
message.$: $.name $.questions etc...
但这行不通
下面是我的代码:
stepFunctions:
stateMachines:
hellostepfunc1:
name: test
definition:
Comment: "test"
StartAt: SNSState
States:
SNSState:
Type: Task
InputPath: $
Resource: arn:aws:states:::sns:publish
Parameters:
TopicArn:
Fn::GetAtt: [ MyTopic, TopicArn ]
Message.$: $ //here I would like to send multiple e.g $.name $questions
End: true
1条答案
按热度按时间py49o6xq1#
最好的方法是使用AWS Lambda函数。也就是说,开发一个自定义的AWS Lambda函数,该函数可以使用JSON库读取和操作JSON以满足您的业务需求。然后将这些Lambda函数挂钩到Amazon States Language document中。