我正在尝试通过api网关将5MB图像上传到aws lambda。 我需要将文件内容作为二进制或缓冲区传递而不进行任何转换。但API网关将输入转换为base64
默认情况下,转换后的base64文本为7MB。由于在base64转换后数据大小增加 lambda不允许该大小。 如何在API网关中阻止此自动base64转换? 在AWS论坛中,大多数人都建议将文件上传到s3存储桶并在lambda中使用它。但在我的情况下,我需要在没有S3帮助的情况下将其直接传递给lambda。我已经在这里工作了几个星期......任何帮助或见解都表示赞赏。
答案 0 :(得分:1)
As documented,同步调用的最大有效负载大小(来自API网关)为6 MB。
这意味着,如果您有更大的有效负载,则需要将它们分解为多个请求并将这些请求组合起来进行处理。这意味着您需要某种形式的存储来存放碎片,以及将碎片链接在一起的方法。
如果您需要在单个请求中上传更大的有效负载,并且无法使用其他替代方案,例如首先上传到S3,则Lambda不适合您。