授权访问

目录

生成签名URL

使用URL上传文件

储存在桶内的文件可以通过签名URL实现访客临时访问。生成签名URL时,您可以通过指定URL的过期时间来限制访客的访问时长。

在URL中加入签名信息,以便将该URL转给第三方实现授权访问。

生成签名URL

使用以下代码生成签名URL:

            import oss

            # 设置基本信息
            APIKey = '<your_API_key>'
            APIKeySecrete = '<your_API_key_secrete>'
            EndPoint = 'oss.cn-north-3.inspurcloudoss.com'
            BucketName = '<your_bucket_name>'
            # <your_object_name>需包含目录及文件名后缀,如:“img/my_photo.png”
            ObjectName = '<your_object_name>'

            # 使用API密钥来获取管理权限,获得方式在控制台右上角用户头像->API密钥
            auth = oss.Auth(APIKey, APIKeySecrete)

            # 使用密钥, 节点来初始化储存信息,这里以华北三为案例
            bucket = oss.Bucket(auth, EndPoint, BucketName)

            # 生成限时60秒并可用于下载的签名URL
            print(bucket.sign_url('GET', ObjectName, 60))

使用URL上传文件

使用以下代码进行URL上传文件

            import oss

            # 设置基本信息
            APIKey = '<your_API_key>'
            APIKeySecrete = '<your_API_key_secrete>'
            EndPoint = 'oss.cn-north-3.inspurcloudoss.com'
            BucketName = '<your_bucket_name>'
            # <your_object_name>需包含目录及文件名后缀,如:“img/my_photo.png”
            ObjectName = '<your_object_name>'

            # 使用API密钥来获取管理权限,获得方式在控制台右上角用户头像->API密钥
            auth = oss.Auth(APIKey, APIKeySecrete)

            # 使用密钥, 节点来初始化储存信息,这里以华北三为案例
            bucket = oss.Bucket(auth, EndPoint, BucketName)

            # 生成限时60秒并可用于上传的签名URL,该文件在创建URL时已在桶中生成
            print(bucket.sign_url('GET', ObjectName, 60))

            # 通过URL上传内存中的字符串
            bucket.put_object_with_url(URL, '欢迎使用浪潮云')

使用URL上传的内容也可以从本地文件中获取。参考以下代码:

            # <your_local_file_path>为绝对路径,需包含文件后缀名,若无此文件则创建新文件。如:“D:/recv/file.txt”
            LocalFilePath = '<your_local_file_path>'

            # 使用bucket.sign_url()得到的url
            URL = <your_url>

            # 通过URL上传文件中的内容
            bucket.put_object_with_url_from_file(URL, LocalFilePath)