以下是一个简单的示例,展示如何使用AWS Lambda和Python 3来处理POST文件:
import boto3
s3 = boto3.client('s3')
def lambda_handler(event, context):
# 获取POST请求中的文件数据
file_content = event['body']
file_name = event['filename']
# 将文件保存到S3桶中
s3.put_object(Body=file_content, Bucket='your-bucket-name', Key=file_name)
# 返回成功的响应
return {
'statusCode': 200,
'body': 'File uploaded successfully.'
}
要使用此代码,您需要将上述代码保存为一个AWS Lambda函数,并将其与API Gateway集成。在API Gateway中,您需要创建一个POST方法,并将其与Lambda函数关联。此外,您还需要确保Lambda函数具有适当的IAM角色,以允许访问S3桶。
当使用POST请求将文件发送到API Gateway时,文件数据将作为事件的一部分传递给Lambda函数。在Lambda函数中,您可以通过event['body']获取文件内容,通过event['filename']获取文件名。然后,您可以使用boto3库将文件保存到S3桶中。
最后,函数返回一个包含状态码和消息体的响应,以指示文件上传是否成功。
上一篇:AWS Lambda Python 3.7: 无法导入模块'lambda_function': 缺少必需的依赖项['numpy']。
下一篇:aws lambda python ImportError: 在Python中没有对语言“eng”的本地化支持。