Amazon web services 使用AmazonS3获取客户图像和缩略图
我在Lambda支持页面上看到了一些脚本示例,可以在上传图像时在单独的存储桶中创建缩略图。但我正在考虑使用S3为多个客户上传客户图像文件。我们可能会使用dropzone.js之类的东西来处理上传,我已经构建了一个可以上传到现有bucket的工作示例。 但由于我们将处理多个客户,我想知道当与S3结合使用时,处理不同客户文件的最佳实践是什么,尤其是需要向客户显示缩略图时 我注意到Lambda解决方案似乎使用了一个预配置的bucket,包括运行脚本所需的所有权限和事件触发器。我对node.js不太熟悉,在Java或python方面做得很少,而且我对aws环境还不熟悉 我是否应该为每个客户创建一个新的存储桶?我可以吗?每次为新客户创建新bucket时,是否必须添加新的lambda create缩略图权限/事件触发器 有更好的方法吗 我还想知道(node.js和aws都是新手)仅在请求时构建缓存缩略图有多困难,而不是在上传文件时尝试构建缓存缩略图Amazon web services 使用AmazonS3获取客户图像和缩略图,amazon-web-services,amazon-s3,aws-lambda,Amazon Web Services,Amazon S3,Aws Lambda,我在Lambda支持页面上看到了一些脚本示例,可以在上传图像时在单独的存储桶中创建缩略图。但我正在考虑使用S3为多个客户上传客户图像文件。我们可能会使用dropzone.js之类的东西来处理上传,我已经构建了一个可以上传到现有bucket的工作示例。 但由于我们将处理多个客户,我想知道当与S3结合使用时,处理不同客户文件的最佳实践是什么,尤其是需要向客户显示缩略图时 我注意到Lambda解决方案似乎使用了一个预配置的bucket,包括运行脚本所需的所有权限和事件触发器。我对node.js不太熟悉
SW您可以对包含每个客户/用户缩略图图像的每个子文件夹使用相同的bucket(您可以使用${user\u id}或类似名称命名每个文件夹) 工作流程可以是
Ex:
你的新水桶
|
----顾客1
|
___图像1.png
___图像2.jpg
___缩略图
|
___图像1.png
___图像2.jpg
您可以对包含每个客户/用户缩略图图像的每个子文件夹使用相同的bucket(您可以使用${user\u id}或类似名称命名每个文件夹) 工作流程可以是
Ex:
你的新水桶
|
----顾客1
|
___图像1.png
___图像2.jpg
___缩略图
|
___图像1.png
___图像2.jpg
关于客户和图像,您的业务要求是什么?每个客户是否都有自己的图像集,这些图像应该只能由一个客户访问?图像本身是否应该对任何知道URL的人都可以访问,或者您是否希望确保它们仅对图像“所有者”可用?您的客户将如何使用这些图像?他们是从自己的网站引用这些图像,还是这些图像仅用于您的应用程序?请随意编辑您的问题,以提供更多详细信息。是的,每位客户只能访问自己的图像。大文件通常是打印时可能达到的最高分辨率。它们应该是“完成”的形式,这样客户就不需要经常看到完整的分辨率,但缩略图大小用于购物车预览、样张等。您对客户和图像的业务要求是什么?每个客户是否都有自己的图像集,这些图像应该只能由一个客户访问?图像本身是否应该对任何知道URL的人都可以访问,或者您是否希望确保它们仅对图像“所有者”可用?您的客户将如何使用这些图像?他们是从自己的网站引用这些图像,还是这些图像仅用于您的应用程序?请随意编辑您的问题,以提供更多详细信息。是的,每位客户只能访问自己的图像。大文件通常是打印时可能达到的最高分辨率。它们应该是“完成”形式,这样客户就不需要经常看到完整分辨率,但缩略图大小用于购物车预览、校样等。如何限制缩略图大小,使给定客户只能看到其图像的上下文?首先,确保您的存储桶不可公开访问。最好的解决方案可能是与AWS Cognito集成(需要用户登录),获得临时凭证(登录成功后),并使用它从用户浏览器上传到S3。(带有AWS SDK的javascript代码)。我假设,由于我们将通过web服务器显示缩略图,我可以设置服务器的权限,然后限制服务器本身使用这些权限向哪个用户显示的内容?我不认为客户直接需要访问AWS上的全尺寸图像,因为他们从一开始就上传了这些图像。您如何限制它,使给定的客户只能看到其图像的上下文?首先,确保您的存储桶不可公开访问。最好的解决方案可能是与AWS Cognito集成(需要用户登录),获得临时凭证(登录成功后),并使用它从用户浏览器上传到S3。(带有AWS SDK的javascript代码)。我假设,由于我们将通过web服务器显示缩略图,我可以设置服务器的权限,然后限制服务器本身使用这些权限向哪个用户显示的内容?我不认为客户直接需要访问AWS上的全尺寸图像,因为他们从一开始就上传了这些图像。