通过Amazon API网关和lambda

时间:2016-05-07 15:00:20

标签: file-upload amazon-s3 aws-lambda aws-api-gateway

我有一个包含API gatewayLambda的REST API。 我不想创建一个用于上传配置文件图片的端点,该端点将文件传递给Lambda函数,在该函数中调整大小,将其注册到数据库并返回新图像的url路径。

有没有办法用这些服务? 无法在线找到任何内容(我发现的唯一建议是直接上传到S3,这需要IAM权限,并且有一个事件触发Lambda函数来调整图片大小。)

由于

更新

AWS更新了APIGATEWAY并且知道您可以send binaries through an endpoint
感谢@blue和@Manzo的评论

2 个答案:

答案 0 :(得分:4)

将文件直接上传到S3并不一定需要IAM权限。您将创建一个返回pre-signed S3 URL的API端点,然后可以使用该端点将文件直接上传到S3。 API端点后面的Lambda函数是唯一需要S3存储桶的正确IAM权限的东西。

答案 1 :(得分:1)

由于API Gateway和Lambda目前不支持本机,因此您可以将文件传递给基于64编码到API网关的图片,然后传递给Lambda函数。您的Lambda函数可以基于64解码,然后调整大小,将其注册到数据库并返回新图像的URL路径。