使用boto3为S3中的版本生成预签名URL

时间:2018-01-26 17:21:28

标签: amazon-web-services amazon-s3 boto3

所以我很难找到有关为S3中的每个文件版本生成预签名URL的方法的信息。我能够获取所有版本,但是当调用generate_presigned_url()时,我没有从版本对象传递的密钥。有没有办法做到这一点?我希望不需要下载每个版本,但如果这是唯一的方法,那很好。

这是我目前的片段:

for version in versions:
    object = version.get()
    url = s3Client.generate_presigned_url(
        ClientMethod='get_object',
        Params={
            'Bucket': bucket,
            'Key': object.get('VersionID') #Not sure what value to put here?
        }
    )

1 个答案:

答案 0 :(得分:1)

对此进行了更多挖掘。看起来可以使用' VersionId'来获取指向旧版文件的预签名网址。参数。这个参数没有被提及为generate_presigned_url调用所支持,但我还是尝试了它并且它运行了。

Array ([0] => Array ([id] => 1 [firstname] => Firstname one [lastname] => Lastname one ) [1] => Array ([id] => 2 [firstname] => Firstname two...