全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

异常处理(Python)

最近更新时间:2025-06-18 20:51:54

KS3 Python SDK异常分为四类:S3ResponseErrorS3CreateErrorKS3ClientErrorKS3ResponseError,这些异常定义在ks3.exception中。

异常的变量、类型及描述如下表所示:

变量

类型

描述

status

Int

服务端异常时,会出现status。

reason

String

问题原因的描述。

request_id

String

  • 服务端异常时,会出现request_id。

  • 某些操作的关联请求也会打印request_id,比如CRC64校验异常。

body

String

异常的具体内容。

异常处理示例

以下代码展示了访问一个不存在的桶时的异常处理,并打印出错误信息的HTTP状态码和请求ID:

from ks3.connection import Connection

# 金山云主账号 AccessKey 拥有所有API的访问权限,风险很高。
# 强烈建议您创建并使用子账号进行API访问或日常运维,请登录https://uc.console.ksyun.com/pro/iam/#/user/list创建子账号。
# 通过指定 host(Endpoint),您可以在指定的地域创建新的存储空间。
conn = Connection('<YOUR_ACCESS_KEY>', '<YOUR_SECRET_KEY>', host='<YOUR_REGION_ENDPOINT>')

# 如果正常返回,则Bucket存在;如果抛出S3ResponseError
try:
  conn.head_bucket('<BUCKET_NAME_NOT_EXIST>')
except S3ResponseError as e:
  print('Bucket [%s] not exists' % bucket_name)
  print('status: %s, reason: %s, request_id: %s, body: %s' % (e.status, e.reason, e.request_id, e.body))  

异常类型

说明

KS3ClientError

由于客户端输入有误引起的异常,比如桶名不合规、CRC64校验不正确等场景。

S3ResponseError

最常见的异常。当KS3服务器返回HTTP错误码时,Python SDK会抛出该异常。

错误码参考文档:错误码

S3CreateError

创建桶失败时抛出该异常,返回409状态码。

KS3ResponseError

针对非存储服务的KS3错误时抛出该异常,比如KS3计量错误。

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈