初始化

本文介绍对象存储US3的Python SDK各种使用场景下的示例代码。

设置公共参数

1
2
public_key = ''         #公钥或token
private_key = ''        #私钥或token
  • 密钥可以在控制台中 API 产品 - API 密钥,点击显示 API 密钥获取。将 public_key 和 private_key 分别赋值给相关变量后,SDK即可通过此密钥完成鉴权。请妥善保管好 API 密钥,避免泄露。
  • token(令牌)是针对指定bucket授权的一对公私钥。可通过token进行授权bucket的权限控制和管理。可以在控制台中对象存储US3-令牌管理,点击创建令牌获取。
  • 管理 bucket 创建和删除必须要公私钥,如果只做文件上传和下载用 TOEKN 即可满足需求,为了安全,强烈建议只使用 TOKEN 做文件管理

设置默认参数

1
2
3
4
5
6
7
8
9
10
11
12
13
from ufile import config

#设置上传host后缀,外网可用后缀形如 .cn-bj.ufileos.com(cn-bj为北京地区,其他地区具体后缀可见控制台:对象存储-单地域空间管理-存储空间域名)
#默认值为'.cn-bj.ufileos.com',如果上传文件的bucket所在地域不在北京,请务必设置此项
config.set_default(uploadsuffix='YOUR_UPLOAD_SUFFIX')
#设置下载host后缀,普通下载后缀即上传后缀,CDN下载后缀为 .ufile.ucloud.com.cn
config.set_default(downloadsuffix='YOUR_DOWNLOAD_SUFFIX')
#设置请求连接超时时间,单位为秒
config.set_default(connection_timeout=60)
#设置私有bucket下载链接有效期,单位为秒
config.set_default(expires=60)
#设置上传文件是否进行数据完整性校验(现仅支持putifle和putstream)
config.set_default(md5=True)
  • 如果在实例化 FileManager 和 MultipartUploadUFile 实例时传入相关参数,则生成的实例会使用传入的值,而不是此处设置的默认值。

设置日志文件

1
2
3
4
from ufile import logger

locallogname = '' #完整本地日志文件名
logger.set_log_file(locallogname)

初始化BucketManager类

Python-SDK通过BucketManager类操作存储空间。

初始化函数

__init__(self, public_key, private_key)

​ 初始化 BucketManager 实例

Parameters

  • public_key: string类型, 账户API公私钥的公钥
  • private_key: string类型,账户API公私钥的私钥

Returns

  • None,如果为非法的公私钥则抛出ValueError异常

代码示例

1
2
3
4
5
6
7
public_key = ''         #账户公钥
private_key = ''        #账户私钥


from ufile import bucketmanager
# 初始化BucketManager类
bucketmanager_handler = bucketmanager.BucketManager(public_key, private_key)

初始化FileManager类

Python-SDK通过FileManager类操作存储空间。

初始化函数

__init__(self, public_key, private_key, upload_suffix=None, download_suffix=None)

​ 初始化 FileManager实例

Parameters

  • public_key: string类型, 账户API公私钥的公钥
  • private_key: string类型,账户API公私钥的私钥
  • upload_suffix: string类型, 如果传入此参数, 则会忽略 config 中配置的 upload_suffix 字段
  • download_suffix: string类型, 如果传入此参数, 则会忽略 config 中配置的 download_suffix 字段

Returns

  • None,如果为非法的公私钥则抛出ValueError异常

代码示例

1
2
3
4
5
6
7
public_key = ''         #账户公钥
private_key = ''        #账户私钥
upload_suffix = ''      #上传host后缀,若不设置,则默认为.cn-bj.ufileos.com
download_suffix = ''	#下载host后缀,若不设置,则默认为.cn-bj.ufileos.com
from ufile import filemanager

putufile_handler = filemanager.FileManager(public_key, private_key,upload_suffix=upload_suffix)