python-3.x boto3生成url没有过期

pcrecxhr  于 2023-10-21  发布在  Python
关注(0)|答案(1)|浏览(177)

我需要帮助与Boto3图书馆的工作。它有get_presigned_url方法,但你需要设置过期时间,我的任务是生成一个永久存在的URL,例如,在应用程序中静态使用它来显示文档,有一个Django存储库,它在引擎盖下完成了这一任务
它只生成一个具有特定生命周期的URL

fhg3lkii

fhg3lkii1#

你不能;不可能创建一个永久有效的预签名URL。
如果你需要一个允许无时间限制地访问你的对象的URL,make the S3 object public &然后使用S3对象URL。

import boto3
from botocore.config import Config

s3_config = Config(
    signature_version = botocore.UNSIGNED,
)

s3 = boto3.client('s3', config=s3_config)

bucket = "{bucket name}"
key = "{object key}"

object_url = s3.generate_presigned_url('get_object', ExpiresIn=0, Params={'Bucket': bucket, 'Key': key})

相关问题