数据使用AWS API网关和Lambda
我试图通过API网关将表单数据从multipart/form-data
POST
发送到我的ASW Lambda Web服务。
HTTP POST
具有内容类型“multipart / form-data”和URL编码的正文。 文件数据也发送到这篇文章中(因此我猜想是多部分)。
Web服务需要与第三方服务集成,因此更改POST
的格式并不是真正的选择。
我已经看到这个线程正在讨论将URL编码数据转换为JSON对象以供在Lambda中使用,但这并不能解决问题。
我也尝试将内容类型multipart/form-data
的Integration Request - > Mapping Templates设置为Input passthrough。 这也没有帮助。
我确实遇到了使用multipart/form-data
上传文件的另一个问题,但由于我对该文件不感兴趣,仅仅是正文,该答案没有帮助。
下面通过runscope找到截图(对不起)的截图。
如果目标是使用Lambda,则需要将有效的JSON传递给函数。 目前,Api Gateway中的JSON-ify数据没有办法作为非JSON数据来使用。
我们的短期修复(在我们的积压工作中)是在映射模板中提供一个变量来获取请求的原始输入。 这样你可以使用如下模板做简单的JSON转换:
{
"body" : "$input.body"
}
或类似的东西。
查看映射模板参考以获取更多信息:http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
编辑4/7 - 功能已作为$ input.body发布
链接地址: http://www.djcxy.com/p/89101.html