我一直使用Boto库来使用Amazon的S3服务,但由于Python3.4项目,我不得不使用Botocore来代替。我已经知道如何做大多数事情,但我似乎找不到如何做一件(非常重要的)事情;生成URL。
在Boto中,我只需要设置一个Key
并触发generate_url
方法。在Botocore中,我该怎么做呢?我知道如何下载和保存文件,但出于服务器性能等原因,我更愿意只获取一个链接。
我一直使用Boto库来使用Amazon的S3服务,但由于Python3.4项目,我不得不使用Botocore来代替。我已经知道如何做大多数事情,但我似乎找不到如何做一件(非常重要的)事情;生成URL。
在Boto中,我只需要设置一个Key
并触发generate_url
方法。在Botocore中,我该怎么做呢?我知道如何下载和保存文件,但出于服务器性能等原因,我更愿意只获取一个链接。
1条答案
按热度按时间uwopmtnx1#
我有一个类似的问题,因为我想把boto和tornado一起使用,有一个botocore的异步版本叫做tornado_botocore,看起来很有前途。
查看S3Connection的generate_url方法:https://github.com/boto/boto/blob/develop/boto/s3/connection.py
快速浏览一下代码后,看起来方法本身并不需要服务器请求,它只是在本地生成URL。我可以通过在没有网络连接的情况下运行以下代码来验证是否没有服务器请求:
这意味着这个特殊的boto API可以安全地用于tornado,不幸的是,这并不能解决Python 3.4中的问题。