この操作では、ディレクトリまたはオブジェクトの名前を変更できます。 この操作は、階層的な名前空間機能が有効になっているバケットのみをサポートします。
使用上の注意
Rename操作を呼び出して、ソースディレクトリまたはオブジェクトの名前を宛先ディレクトリまたはオブジェクトに変更する場合は、次の項目に注意してください。
ソースディレクトリまたはオブジェクトに対するDeleteObject権限と、宛先ディレクトリまたはオブジェクトに対するPutObject権限が必要です。
ソースディレクトリまたはオブジェクトの名前に含まれる親ディレクトリと、宛先ディレクトリまたはオブジェクトが存在する必要があります。
ソースディレクトリまたはオブジェクトの名前を変更するために使用する名前は、宛先ディレクトリまたはオブジェクトの名前に含まれる親ディレクトリ内の既存のディレクトリまたはオブジェクトの名前と同じにすることはできません。
リクエストの構造
POST /dstObjectName?x-oss-HTTP/1.1の名前を変更する
ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com
日付: GMT日付
権限付与: SignatureValue
x-oss-rename-source:srcPathName
リクエストヘッダー
ヘッダー | データ型 | 必須 | 説明 |
x-oss-rename-source | String | 必須 | ソースディレクトリまたはオブジェクトの絶対パス。 例: desktop/oss/a パスはソースバケットに存在する必要があります。 |
ホストや日付などの名前変更リクエストに含まれる共通リクエストヘッダーの詳細については、「共通リクエストヘッダー」をご参照ください。
レスポンスヘッダー
名前変更要求に対する応答には、共通の応答ヘッダーのみが含まれます。 詳細については、「共通レスポンスヘッダー」をご参照ください。
例
リクエストの例
次のサンプルリクエストは、desktop/osstest /ディレクトリ内のaという名前のオブジェクトの名前をbに変更するために送信されます。
POST /desktop/osstest/b?x-oss-HTTP/1.1の名前を変更する
ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
日付: 4月29日木曜日05:21:12 GMT 2021
承認: OSS qn6qrrqxo2oawuk53otfjbyc:CTkuxpLAi4XZ + WwIfNm0Fmgb ****
x-oss-rename-source: desktop/osstest/a
レスポンスの例
HTTP/1.1 200 OK
x-oss-request-id: 559CC9BDC755F95A64485981
日付: 4月29日木曜日05:21:12 GMT 2021
接続: キープアライブ
サーバー: AliyunOSS
SDK
エラーコード
エラーコード | HTTPステータスコード | 説明 |
AccessDenied | 403 | 考えられる原因:
|
NoSuchKey | 404 | 考えられる原因:
|
FileAlreadyExists | 409 | ソースディレクトリまたはオブジェクトの名前を変更するために使用する名前が既存のディレクトリまたはオブジェクトの名前と同じである場合に返されるエラーメッセージ。 |