如何在AWS API Gateway中映射WSGI响应

时间:2019-06-25 22:21:45

标签: python amazon-web-services flask aws-api-gateway wsgi

我使用aws-wsgi将Flask应用程序部署到AWS Lambda。我在AWS API Gateway中创建了一些资源,并将它们的方法映射到我的lambda。现在,我可以对这些资源进行POST / GET并得到“响应”(请参见下文)。我了解此响应是某种WSGI标准的,但我想将其转换为“仅响应”。现在,我的端点返回JSON,但我想灵活地支持Flask应用程序可能返回的其他内容类型。如何在API网关的响应中配置映射以适当地重新格式化响应?我有默认的“集成响应”(带有“输出通过”:是),但是我不知道在“方法响应”中该怎么做。

这是我得到的答复:

{
"isBase64Encoded": false,
"statusCode": "200",
"headers": {
"Content-Type": "application/json",
"Content-Length": "47"
},
"body": "{\n  \"key1\": 1, \n  \"key2\": 3, \n  \"key3\": 2\n}\n"
}

我没有特殊原因在使用Flask和aws-wsgi(https://pypi.org/project/aws-wsgi/),我看到还有其他类似的项目(例如https://github.com/adamchainz/apig-wsgi),并且我愿意尝试替代方案。

1 个答案:

答案 0 :(得分:0)

在“集成请求”下,选中“使用Lambda代理集成”。

相关问题