通过Amazon API网关和lambda上传图像

Yon*_*n B 9 file-upload amazon-s3 aws-lambda aws-api-gateway

我有一个REST API API gatewayLambda.我wan't为上传资料图片,那将文件传递到创建一个端点Lambda的功能,它是被调整,它注册到数据库并返回新图片的URL路径.

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

谢谢

UPDATE

AWS更新了APIGATEWAY并知道您可以通过端点发送二进制文件
感谢@blue和@Manzo对其进行评论

Mar*_*k B 4

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

  • 你是对的,但我有自己的 lambda 函数来授权用户,并根据他的 id 将文件保存到 s3 存储桶。我不认为让用户获取 s3 url 然后上传文件是一个好主意,API 的重点是抽象逻辑和基础设施,用户不应该处理所有这些事情,甚至不知道我们使用 s3或AWS (7认同)