OSS PHP SDK は、無効なパラメーターや存在しないファイルなどのエラーが発生した場合、`OssException` をスローします。`getMessage` メソッドを使用すると、エラーメッセージを取得できます。
`OssException` の詳細については、GitHub をご参照ください。
例外処理の例
次のコードは、すでに存在するバケットを作成しようとした際にスローされる例外をキャッチし、エラーメッセージを出力する例です。
try {
$ossClient->createBucket($bucket);
} catch (OssException $e) {
print("Exception:" . $e->getMessage() . "\n");
}
次の情報を取得することもできます。
パラメーター | 説明 |
HTTPStatus | HTTP ステータスコードです。`getHTTPStatus` メソッドを使用してこの値を取得します。 |
ErrorCode | OSS が返すエラーコードです。`getErrorCode` メソッドを使用してこの値を取得します。 |
ErrorMessage | OSS が返すエラーメッセージです。`getErrorMessage` メソッドを使用してこの値を取得します。 |
RequestId | リクエストを一意に識別する汎用一意識別子 (UUID) です。問題を解決できない場合は、この RequestId を OSS 開発者に提供してサポートを依頼してください。`getRequestId` メソッドを使用してこの値を取得します。 |
Details | OSS が返すエラーメッセージの詳細な説明です。`getDetails` メソッドを使用してこの値を取得します。 |
一般的な OSS エラーコード
エラーコード | 説明 | HTTP ステータスコード |
AccessDenied | アクセスが拒否されました。 | 403 |
BucketAlreadyExists | バケットはすでに存在します。 | 409 |
BucketNotEmpty | バケットは空ではありません。 | 409 |
EntityTooLarge | エンティティが大きすぎます。 | 400 |
EntityTooSmall | エンティティが小さすぎます。 | 400 |
FileGroupTooLarge | ファイルグループが大きすぎます。 | 400 |
FilePartNotExist | ファイルパートが存在しません。 | 400 |
FilePartStale | ファイルパートが古くなっています。 | 400 |
InvalidArgument | パラメーターのフォーマットが無効です。 | 400 |
InvalidAccessKeyId | AccessKey ID が存在しません。 | 403 |
InvalidBucketName | バケット名が無効です。 | 400 |
InvalidDigest | ダイジェストが無効です。 | 400 |
InvalidObjectName | オブジェクト名が無効です。 | 400 |
InvalidPart | パートが無効です。 | 400 |
InvalidPartOrder | パートの順序が無効です。 | 400 |
InvalidTargetBucketForLogging | ロギング操作のターゲットバケットが無効です。 | 400 |
InternalError | OSS で内部エラーが発生しました。 | 500 |
MalformedXML | XML フォーマットが無効です。 | 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 |