Javascript 处理aws s3预签名URL过期日期的最佳实践

Javascript 处理aws s3预签名URL过期日期的最佳实践,javascript,amazon-web-services,amazon-s3,pre-signed-url,Javascript,Amazon Web Services,Amazon S3,Pre Signed Url,我将图像保存到我的s3存储桶中,生成一个预先签名的URL,并将其保存为模型模式中的一个字段。当我的前端从后端检索模型对象时,它使用该URL检索图像 您可以使用v4设置的最大过期日期为7天。那么,处理这些URL刷新的最佳实践是什么 我想到的事情: 在我的后端有一个cron作业,每24小时检查一次是否有URL在接下来的24小时内失效,并生成一个新的URL以防万一。 每次收到GET请求时都会检查它,如果无效,则重新生成 根本不检查后端,只需尝试点击前端的URL,如果我得到403,则从后端请求重新生成。

我将图像保存到我的s3存储桶中,生成一个预先签名的URL,并将其保存为模型模式中的一个字段。当我的前端从后端检索模型对象时,它使用该URL检索图像

您可以使用v4设置的最大过期日期为7天。那么,处理这些URL刷新的最佳实践是什么

我想到的事情:

在我的后端有一个cron作业,每24小时检查一次是否有URL在接下来的24小时内失效,并生成一个新的URL以防万一。 每次收到GET请求时都会检查它,如果无效,则重新生成 根本不检查后端,只需尝试点击前端的URL,如果我得到403,则从后端请求重新生成。我不太喜欢这个想法,因为我不能简单地使用/>,但必须用其他逻辑来包装它。 最佳做法是不要存储预签名的URL

相反,在需要时动态生成它们。它们只需要几行代码就可以生成,并且生成不涉及对AWS的调用

因此,每当应用程序需要引用预先签名的URL时,立即生成并使用它。无需担心过期时间。

最佳做法是不存储预先签名的URL

相反,在需要时动态生成它们。它们只需要几行代码就可以生成,并且生成不涉及对AWS的调用


因此,每当应用程序需要引用预先签名的URL时,立即生成并使用它。无需担心过期时间。

因为我不想在前端拥有AWS凭据,所以我必须在后端生成它们。但是,每次前端从后端请求URL时,每5秒生成1000个URL似乎是一项开销。此外,尽管img标记中的URL发生了更改,浏览器是否仍然缓存图像?因为我不想在前端使用AWS凭据,所以我必须在后端生成它们。但是,每次前端从后端请求URL时,每5秒生成1000个URL似乎是一项开销。此外,尽管img标记中的URL发生了更改,浏览器是否仍缓存图像?