当在S3上找不到文件时,能否触发Lambda函数?

0

【以下的问题经过翻译处理】 我在S3上托管我的网站的图像。当请求图像时,如果找不到该文件,我希望能够触发Lambda函数或其他适当的操作。Lambda函数本身看起来很简单,但我无法找到在文件未找到时的触发器设置。

我尝试的具体情况是这样的:我们的网站有多个环境,根据环境的结构保存图像(例如:https://amoncarterweb.s3.amazonaws.com/website/[WEBENVIRONMENT]/styles/s3/screenshot.png)。由于我们保存了数百GB的图像,因此在开发环境中复制该目录可能不太实用,因为它可能只存在很短的时间。如果请求的图像未找到,我想触发Lambda函数来检查是否请求了非LIVE环境上的资源,然后再检查它是否存在于LIVE环境中。如果是这样,我希望将其复制到其他环境中。

profile picture
专家
已提问 5 个月前0 查看次数
1 回答
0

【以下的回答经过翻译处理】 你可以使用Lambda@Edge,当原始响应返回404 HTTP状态码时触发代码。请参考以下链接: https://aws.amazon.com/about-aws/whats-new/2017/12/lambda-at-edge-now-allows-you-to-customize-error-responses-from-your-origin/https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-updating-http-responses.html

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则