OSS PHP SDK异常(OssException)包括参数无效、文件不存在等错误。您可以通过getMessage方法获取错误信息。

OssException的详细信息请参见GitHub

异常处理示例

以下代码展示了创建一个已存在的存储空间时的异常处理,并打印出错误信息(Message)。

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

您还可以获取以下信息:

参数说明
HTTPStatusHTTP状态码,通过方法getHTTPStatus获取。
ErrorCodeOSS返回的错误码,通过方法getErrorCode获取。
ErrorMessageOSS返回的错误信息,通过方法getErrorMessage获取。
RequestId用于唯一标识该请求的UUID。当您无法解决问题时,可以提供RequestId来请求OSS开发工程师的帮助。通过方法getRequestId获取。
DetailsOSS返回的错误信息描述。通过方法getDetails获取。

OSS常见错误码

错误码描述HTTP状态码
AccessDenied拒绝访问403
BucketAlreadyExists存储空间已经存在409
BucketNotEmpty存储空间不为空409
EntityTooLarge实体过大400
EntityTooSmall实体过小400
FileGroupTooLarge文件组过大400
FilePartNotExist文件分片不存在400
FilePartStale文件分片过时400
InvalidArgument参数格式错误400
InvalidAccessKeyIdAccessKeyId不存在403
InvalidBucketName无效的存储空间名称400
InvalidDigest无效的摘要400
InvalidObjectName无效的文件名称400
InvalidPart无效的分片400
InvalidPartOrder无效的分片顺序400
InvalidTargetBucketForLoggingLogging操作中有无效的目标bucket400
InternalErrorOSS内部错误500
MalformedXMLXML格式非法400
MethodNotAllowed不支持的方法405
MissingArgument缺少参数411
MissingContentLength缺少内容长度411
NoSuchBucket存储空间不存在404
NoSuchKey文件不存在404
NoSuchUpload分片上传ID不存在404
NotImplemented无法处理的方法501
PreconditionFailed预处理错误412
RequestTimeTooSkewed客户端本地时间和OSS服务器时间相差超过15分钟403
RequestTimeout请求超时400
SignatureDoesNotMatch签名错误403
InvalidEncryptionAlgorithmError指定的熵编码加密算法错误400