gpt4 book ai didi

python - 将 Amazon S3 与 Heroku、Python 和 Flask 结合使用

转载 作者:太空狗 更新时间:2023-10-29 18:16:31 24 4
gpt4 key购买 nike

我正在尝试使用 Flask 在 Heroku 上运行一个简单的图像上传应用程序。我在这里学习教程:http://flask.pocoo.org/docs/patterns/fileuploads/

但是,我想使用 S3 来存储文件而不是临时目录,因为 Heroku 不允许您写入磁盘。我找不到任何具体针对 Heroku 和 Flask 执行此操作的示例。

最佳答案

在我看来,在将上传文件存储到临时文件的示例代码中,您只需替换 file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename) ) 使用将文件上传到 S3 的代码。

例如,从链接页面:

def upload_file():
if request.method == 'POST':
file = request.files['file']
if file and allowed_file(file.filename):
filename = secure_filename(file.filename)
s3 = boto.connect_s3()
bucket = s3.create_bucket('my_bucket')
key = bucket.new_key(filename)
key.set_contents_from_file(file, headers=None, replace=True, cb=None, num_cb=10, policy=None, md5=None)
return 'successful upload'
return ..

或者,如果您想异步上传到 S3,您可以使用 Heroku 提供的任何排队机制。

关于python - 将 Amazon S3 与 Heroku、Python 和 Flask 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8107198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com