从 Lambda 函数中的 API 网关调用获取响应正文
Get response body from API Gateway call in Lambda function
我知道如何设置 API 网关并将其 link 设置为 Lambda 函数。我不知道的是如何从 Lambda 中的 API 网关获取响应主体。
如何获取?我在 AWS 控制台中测试 API 时看到它。
我认为您必须设置 Body 映射模板。转到网关 API -> API 您创建的 -> 资源 -> 方法(Get/Post ..) -> 集成请求 -> Body 映射模板 -> 添加映射模板
Content Type: application/json
{
"body" : $input.json('$'),
"headers": {
#foreach($header in $input.params().header.keySet())
"$header": "$util.escapeJavaScript($input.params().header.get($header))" #if($foreach.hasNext),#end
#end
},
"method": "$context.httpMethod",
"params": {
#foreach($param in $input.params().path.keySet())
"$param": "$util.escapeJavaScript($input.params().path.get($param))" #if($foreach.hasNext),#end
#end
},
"query": {
#foreach($queryParam in $input.params().querystring.keySet())
"$queryParam": "$util.escapeJavaScript($input.params().querystring.get($queryParam))" #if($foreach.hasNext),#end
#end
}
}
您应该能够访问 Lambda 中的变量
params.Item = event.query;
访问查询参数
查看这些链接了解更多信息
http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
如果有帮助请告诉我。
我知道如何设置 API 网关并将其 link 设置为 Lambda 函数。我不知道的是如何从 Lambda 中的 API 网关获取响应主体。
如何获取?我在 AWS 控制台中测试 API 时看到它。
我认为您必须设置 Body 映射模板。转到网关 API -> API 您创建的 -> 资源 -> 方法(Get/Post ..) -> 集成请求 -> Body 映射模板 -> 添加映射模板
Content Type: application/json
{
"body" : $input.json('$'),
"headers": {
#foreach($header in $input.params().header.keySet())
"$header": "$util.escapeJavaScript($input.params().header.get($header))" #if($foreach.hasNext),#end
#end
},
"method": "$context.httpMethod",
"params": {
#foreach($param in $input.params().path.keySet())
"$param": "$util.escapeJavaScript($input.params().path.get($param))" #if($foreach.hasNext),#end
#end
},
"query": {
#foreach($queryParam in $input.params().querystring.keySet())
"$queryParam": "$util.escapeJavaScript($input.params().querystring.get($queryParam))" #if($foreach.hasNext),#end
#end
}
}
您应该能够访问 Lambda 中的变量
params.Item = event.query;
访问查询参数
查看这些链接了解更多信息 http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
如果有帮助请告诉我。