在AWS API Gateway中,当我使用模拟集成时,如何从集成请求传递数据到集成响应?

0

【以下的问题经过翻译处理】 你好。我不想使用Lambda函数。我想直接从Integration Request传递数据到Integration Response。我的Integration Request映射模板如下:

{
  "statusCode": 200
}

我想要从中提取statusCode,并在Integration Response中使用它。我正在尝试以下方式:

{
"provided_statusCode": "$input.path('$.statusCode')"
}

我还尝试了input.json('$.statusCode'),但它不起作用。有人可以帮忙吗? 我得到的响应如下:

{
  "provided_statusCode": ""
}
profile picture
专家
已提问 5 个月前58 查看次数
1 回答
0

【以下的回答经过翻译处理】 在API Gateway中,您需要为每个状态码(200、302、400、500)创建集成响应和方法响应才能呈现它们。

您可以从集成请求中获取所有数据,除了状态码以外,因为API Gatewway会为您管理它。

以下是在使用模拟时,将集成请求中的主体获取到集成响应中的示例:

集成请求
#set($context.requestOverride.path.body = $input.body)
{
  "statusCode": 200,
}

集成响应
#set($body = $context.requestOverride.path.body)
{
  "statusCode": 200,
  "body": $body,
}

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则