node.js - 让亚马逊S3在文件上传时发送http请求

标签 node.js amazon-web-services amazon-s3

当文件上传到我的 S3 存储桶中时,我需要我的 Nodejs 应用程序接收带有文件名的 http 请求。

我想要一些关于实现这一目标的最简单/直接方法的建议。

到目前为止,我看到了 3 种方法可以做到这一点,但我觉得我想太多了,而且肯定存在更好的选择:

1/ 文件上传到 s3 -> S3 向 SNS 发送通知 -> SNS 向我的应用程序发送 http 请求

2/ 文件上传到 s3 -> lambda 函数被触发并向我的应用程序发送 http 请求

3/ 让我的应用程序定期监视存储桶并在上传文件时执行某些操作

谢谢

ps。是的,我对亚马逊服务真的很陌生:)

最佳答案

  1. SNS:可以正常工作,但您必须管理 SNS 主题订阅。您也无法控制 HTTP post 的格式。
  2. Lambda:这就是我想要的。它给你最大的控制权。
  3. 您将如何有效地准确检查新对象?这不是一个好的解决方案。

您还可以让 S3 将新对象事件发布到 SQS,并将您的应用程序配置为轮询 SQS 队列,而不是监听 HTTP 请求。

关于node.js - 让亚马逊S3在文件上传时发送http请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47273892/

相关文章:

amazon-web-services - 如何从 AWS S3 提供 Gzip 压缩的 webpack 包

node.js - Azure copyBlob Node.js API 错误

angularjs - 在网页中提供 REST-API 数据而不暴露 API 端点

Node.Js 部分数据

linux - 关于在 Amazon AWS 上格式化新的 EBS 卷

amazon-web-services - 如何通过 AWS SES 向多个收件人发送电子邮件

javascript - 为什么我的nodejs pdf上传代码返回Status 415 "unsupported Media Type"

amazon-web-services - 如何将 AWS::ECS::Service 更新为 Fargate 启动类型

sql-server - 上传失败 : .\<filename.sql> 到 s3 ://<bucket-name>/<filename. sql> [SSL : CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl. c:661)

amazon-s3 - 尝试使用 Apache Beam 读取/写入时出现 "No filesystem found for scheme s3"