如何在Google App Engine中使用Python(和boto)从Amazon S3通过浏览器下载文件?
我有一个在Google App Engine上运行的Python脚本,使用的是boto 1.9b,这个脚本可以获取S3桶里的所有键(也就是文件名)。输出的结果是一个HTML表格。
bucket_instance = conn_s3.get_bucket(bucketname)
liste_keys = bucket_instance.get_all_keys()
table = '<table>'
for i in range(laenge_liste_keys):
table = table + '<tr><td>'+str(liste_keys[i].name)+</td></tr>'
table = '</table>'
我该怎么做才能把这些键的名字变成链接,让用户可以通过浏览器下载这些文件呢?
谢谢大家!
2 个回答
2
这个文件的公开网址大概是这样的:
http://s3.amazonaws.com/bucket_name/key_name
所以在你的代码里,添加链接的时候,要把它们的href属性指向这个网址。
3
解决方案找到了。
generate_url(expires_in, method='GET', headers=None, query_auth=True, force_http=False)
这样就可以很方便地为每个键创建一个有效期为x秒的链接。