我有一个参数'request_id',我想要从两种不同的JSON格式获取ID,并将其发送到我的步进函数任务的输入。
第一种形式如下所示:
{ "request_id": "abcde-abcd-abcde-abc" }
第二种是这种形式:
{ "request": { "id": "abcde-abcd-abcde-abc", }
目前,我有一个参数看起来像
"request_id.$": "$.request_id"
但想要的东西等同于(这一点不起作用)
"request_id.$": "$.['request_id','request.id']"
在step函数中是否可行?或者我需要将这两个请求ID拆分为JSON中的两个路径,还是在函数中执行?
一种解决方法是拥有选择状态并检查是否存在第一个变量:
{
"Variable": "$.request_id",
"IsPresent": true
}
然后根据结果进行两个不同的分配。
https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-choice-state.html
{
"StartAt": "choice",
"States": {
"choice": {
"Type": "Choice",
"Choices": [
{
"Variable": "$.request_id",
"IsPresent": true,
"Next": "assignment1"
}
],
"Default": "assignment2"
},
"assignment1": {
"Type": "Pass",
"Result": "World",
"End": true
},
"assignment2": {
"Type": "Pass",
"Result": "World",
"End": true
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句