使用SDK时如果请求出错,会有相应的异常抛出,同时在log(默认为程序运行目录下oss_sdk.log)中也会记录详细的出错信息。

OSS Ruby SDK中有ClientError和ServerError两种异常,它们都是RuntimeError的子类。

ClientError

ClientError指SDK内部出现的异常,比如参数设置错误、断点续传上传或断点续传下载过程中出现的文件被修改的错误。

ServerError

ServerError指服务器端错误,它来自于对服务器错误信息的解析。ServerError 有以下几个属性:

  • http_code: 出错请求的HTTP状态码
  • error_code: OSS的错误码
  • message: OSS的错误信息
  • request_id: 标识该次请求的UUID;当您无法解决问题时,可以凭这个RequestId来请求OSS开发工程师的帮助

OSS中常见的错误信息请参考OSS错误响应