表单 – 使用AWS API Gateway和Lambda从multipartform-data获取非文件正文

表单 – 使用AWS API Gateway和Lambda从multipartform-data获取非文件正文,第1张

概述我试图通过API网关将表单数据从multipart / form-data POST获取到我的ASW Lambda Web服务. HTTP POST具有Content-Type“multipart / form-data”和URL编码的主体.文件数据也在这篇文章中发送(因此我认为是多部分). Web服务需要与第三方服务集成,因此更改POST的格式实际上不是一种选择. 我已经看到这个thread谈论 我试图通过API网关将表单数据从multipart / form-data POST获取到我的ASW Lambda Web服务.

http POST具有Content-Type“multipart / form-data”和URL编码的主体.文件数据也在这篇文章中发送(因此我认为是多部分).

Web服务需要与第三方服务集成,因此更改POST的格式实际上不是一种选择.

我已经看到这个thread谈论将URL编码数据转换为JsON对象以便在Lambda中使用,但这并不能解决问题.

我也尝试过设置集成请求 – >将内容类型multipart / form-data的模板映射到input passthrough.这也没有帮助.

我确实遇到了另一个关于使用multipart / form-data上传文件的question,但由于我对文件不感兴趣,只是正文,这个答案没有帮助.

下面通过runco​​pe找到捕获的帖子的截图(对不起).

解决方法 如果目标是使用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发布

总结

以上是内存溢出为你收集整理的表单 – 使用AWS API Gateway和Lambda从multipart / form-data获取非文件正文全部内容,希望文章能够帮你解决表单 – 使用AWS API Gateway和Lambda从multipart / form-data获取非文件正文所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1139216.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存