Step Function Gateway Integration - Response Header

0

I use a Step Function integrated into an API Gateway endpoint. The Step Functions last Task is a Lambda Function. Based on a calculation in the last Task I want to set a response header. The problem that I'm facing is that the standard way of mapping the header doesn't work: integration.response.body.JSONPathExpression

The problem is that the output of a task is always parsed to a json string and can not be accessed via integration.response.body. I can only access the complete Json string: integration.response.body.output

But I can not access any nested properties because it's just a Json string.

Has anyone else faced a similar problem and solved it?

1개 답변
0

You may need to use mapping templates and use $util.parseJson().

profile pictureAWS
전문가
Uri
답변함 3달 전
  • Thank you for your answer. The problem is that the mapping template is applied after the header mapping. So mapping the application/json has no influence on my header mapping.

  • That is true, but you can override the value of a header inside the mapping template using $context.responseOverride.header.header_name. See more here

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠