これやってるので躓いたところを追記していく
03 Inputの受け取り+Choiceステートを使っていみる
ステートマシンクエリ言語の確認
ハンズオンではJSONPathで書いている
JSONPath用
{
"TableName": "Article",
"Key": {
"ArticleID": {
"S.$": "$.ArticleID"
}
}
}
JSONata用
{
"TableName": "Article",
"Key": {
"ArticleID": {
"S": "{% $states.input.ArticleID %}"
}
}
}
Choiceフロー設定
コード
{
"QueryLanguage": "JSONata",
"Comment": "A description of my state machine",
"StartAt": "DynamoDB GetItem",
"States": {
"DynamoDB GetItem": {
"Type": "Task",
"Resource": "arn:aws:states:::aws-sdk:dynamodb:getItem",
"Arguments": {
"TableName": "Article",
"Key": {
"ArticleID": {
"S": "{% $states.input.ArticleID %}"
}
}
},
"Next": "Item Exist"
},
"Item Exist": {
"Type": "Choice",
"Choices": [
{
"Next": "成功",
"Condition": "{% $states.input.Item != null %}"
}
],
"Default": "Fail"
},
"成功": {
"Type": "Succeed"
},
"Fail": {
"Type": "Fail"
}
},
"TimeoutSeconds": 30
}