以下是一个使用AWS Lambda和Python的代码示例,用于处理AWS S3事件ObjectRemoved并获取删除的文件:
import boto3
def lambda_handler(event, context):
# 检查事件类型是否为ObjectRemoved
if event['Records'][0]['eventName'] == 'ObjectRemoved:Delete':
# 获取删除的文件名
file_key = event['Records'][0]['s3']['object']['key']
# 获取存储桶名称
bucket_name = event['Records'][0]['s3']['bucket']['name']
# 创建S3客户端
s3_client = boto3.client('s3')
try:
# 获取删除的文件对象
response = s3_client.get_object(Bucket=bucket_name, Key=file_key)
# 处理文件对象
# ...
return {
'statusCode': 200,
'body': 'File retrieved successfully'
}
except Exception as e:
return {
'statusCode': 500,
'body': str(e)
}
else:
return {
'statusCode': 400,
'body': 'Invalid event type'
}
请注意,上述示例假设您已经设置和配置了AWS Lambda函数,并且具有适当的IAM角色来访问S3存储桶和执行所需的操作。您还需要安装boto3库来与AWS服务进行交互。
上一篇:AWS S3是否支持长轮询?