10. 错误处理

10.1. 异常处理

调用S3Client类的相关接口时,如果抛出异常,则表明操作失败,否则操作成功。抛出异常时,方法返回的数据无效。NosClient类的接口异常时会抛出异常类 AwsException。

10.2. 异常处理实例

错误处理代码如下所示:

try {
    $s3Client->createBucket($bucket);
} catch (AwsException $e){
    print("Exception:" . $e->getMessage() . "\n");
}

10.3. AwsException

AwsException:

  • 客户端异常,包括参数无效、文件不存在等错误。该类错误可以通过AwsException::getMessage()获取错误信息。

  • 服务器端异常,指NOS返回的错误,比如无权限、文件不存在等。可以通过AwsException::getMessage()获取错误信息。该类异常还包含以下信息:

    1. HTTPStatus: HTTP状态码,通过方法getStatusCode()获取。
    2. ErrorCode: NOS返回给用户的错误码,通过方法getAwsErrorCode()获取。
    3. ErrorMessage: NOS提供的错误描述,通过方法getAwsErrorMessage()获取。
    4. RequestId: 用于唯一标识该请求的UUID;当您无法解决问题时,可以凭这个RequestId来请求NOS开发工程师的帮助。通过方法getAwsRequestId获取。
    5. Message: NOS返回的错误信息原文。通过方法getMessage()获取。