异常处理

最近更新时间:2019-05-08 15:18:21

简介

调用 SDK 接口请求 COS 服务失败时,系统将抛出 CosXmlClientException(客户端异常)或者 CosXmlServiceException (服务端异常)。

  • CosXmlClientException 是由于客户端无法和 COS 服务端正常进行交互所引起。如客户端无法连接到服务端,无法解析服务端返回的数据,读取本地文件发生 IO 异常等。
  • CosXmlServiceException 是客户端和 COS 服务端交互正常,但操作 COS 资源失败。如客户端访问一个不存在 Bucket ,删除一个不存在的文件,没有权限进行某个操作等。

客户端异常

CosClientException 集成自 Exception,使用方法同 Exception,同时添加一个额外的成员 errorCode,如下:

成员 描述 类型
errorCode 客户端错误码,如10000表示参数检验失败,更多详情请参阅 SDK 错误码 int

服务端异常

CosXmlServiceException 例如客户端访问一个不存在 Bucket, 删除一个不存在的文件,没有权限进行某个操作, 服务端故障异常等。CosXmlServiceException 包含了服务端返回的状态码, requestid, 出错明细等。捕获异常后, 建议对整个异常进行打印, 异常包含了必须的排查因素。以下是异常成员变量的描述:

成员 描述 类型
requestId 请求 ID,用于表示一个请求,对于排查问题十分重要 string
statusCode response 的 status 状态码,4xx 是指请求因客户端而失败,5xx 是服务端异常导致的失败,更多详情请参阅 COS 错误信息 string
errorCode 请求失败时 body 返回的 Error Code,更多详情请参阅 COS 错误信息 string
errorMessage 请求失败时 body 返回的 Error Message,更多详情请参阅 COS 错误信息 string