全部产品
Search
文档中心

Object Storage Service:DeleteObject

更新时间:Nov 09, 2025

Menghapus sebuah objek.

Catatan penggunaan

  • Jika bucket memiliki aturan replikasi data yang dikonfigurasi dan diatur untuk menyinkronkan semua perubahan pada data (Tambah/Hapus/Ubah), termasuk pembuatan, modifikasi, dan penghapusan objek, memanggil operasi DeleteObject untuk menghapus objek yang tersimpan di dalamnya akan mengakibatkan objek yang direplikasi dihapus dari bucket tujuan yang terkait dengan kebijakan replikasi. Selain itu, jika versioning juga diaktifkan untuk bucket ini, penanda hapus akan dibuat untuk objek yang dihapus di bucket sumber dan direplikasi ke bucket tujuan saat Anda memanggil operasi DeleteObject.

  • Objek yang dihapus tidak dapat dipulihkan. Lanjutkan dengan hati-hati. Untuk informasi lebih lanjut tentang cara menghapus objek, lihat Hapus objek.

  • Kode status HTTP 204 dikembalikan ketika operasi DeleteObject berhasil, terlepas dari apakah objek tersebut ada atau tidak.

  • Jika objek yang ingin Anda hapus adalah tautan simbolik, operasi DeleteObject hanya menghapus tautan simbolik tetapi tidak menghapus objek yang ditunjuk oleh tautan tersebut.

  • Operasi DeleteObject tidak dapat digunakan untuk menghapus direktori dalam bucket yang fitur namespace hierarkisnya diaktifkan.

Versioning

Saat Anda memanggil DeleteObject untuk menghapus objek dari bucket yang diberi versi, Anda harus menentukan apakah akan menyertakan ID versi dalam permintaan.

  • Hapus objek tanpa menentukan ID versi (penghapusan sementara)

    Jika Anda tidak menentukan ID versi objek yang ingin Anda hapus dalam permintaan, OSS tidak akan menghapus versi saat ini dari objek tetapi menambahkan penanda hapus ke objek sebagai versi baru. Selain itu, tanggapan terhadap permintaan mencakup header x-oss-delete-marker = true dan header x-oss-version-id yang menunjukkan ID versi dari penanda hapus yang dibuat.

    Jika nilai dari x-oss-delete-marker adalah true, nilai dari x-oss-version-id adalah ID versi dari penanda hapus.

    Catatan

    Jika Anda menghapus objek tanpa menentukan ID versinya dalam bucket yang pengendalian versinya ditangguhkan dan objek tersebut sudah memiliki versi null, OSS menambahkan penanda hapus dengan ID versi null untuk menimpa versi null yang ada. Sebuah objek dapat memiliki hingga satu versi yang ID versinya adalah null.

  • Hapus objek dengan menentukan ID versi (penghapusan permanen)

    Jika Anda menentukan versionId dalam params dari permintaan, OSS menghapus versi yang ditentukan. Jika Anda ingin menghapus versi null, sertakan params['versionId'] = "null" dalam params. OSS mengidentifikasi string "null" sebagai ID versi yang akan dihapus dan menghapus versi null tersebut.

Izin

Secara default, akun Alibaba Cloud memiliki izin penuh. Pengguna RAM atau Peran RAM di bawah Akun Alibaba Cloud tidak memiliki izin apa pun secara default. Akun Alibaba Cloud atau administrator akun harus memberikan izin operasi melalui Kebijakan RAM atau Kebijakan Bucket.

API

Aksi

Deskripsi

DeleteObject

oss:DeleteObject

Menghapus sebuah objek.

oss:DeleteObjectVersion

Menghapus versi tertentu dari sebuah objek.

Sintaks permintaan

DELETE /ObjectName HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

Header permintaan

Semua header dalam permintaan DescribeRegions adalah header permintaan umum. Untuk informasi lebih lanjut, lihat Header Permintaan Umum.

Header respons

Header

Tipe

Contoh

Deskripsi

x-oss-delete-marker

Boolean

true

Menunjukkan apakah objek tersebut adalah penanda hapus.

  • Jika Anda tidak menentukan ID versi objek yang ingin Anda hapus dalam permintaan DeleteObject, OSS membuat penanda hapus sebagai versi saat ini dari objek dan menyertakan header ini dengan nilai true dalam respons.

  • Jika Anda menentukan ID versi objek yang ingin Anda hapus dalam permintaan DeleteObject dan versi yang ditentukan adalah penanda hapus, OSS menyertakan header ini dengan nilai true dalam respons.

Nilai valid: true

x-oss-version-id

String

CAEQMxiBgIDh3ZCB0BYiIGE4YjIyMjExZDhhYjQxNzZiNGUyZTI4ZjljZDcz****

ID versi dari objek yang dihapus.

  • Jika Anda tidak menentukan ID versi objek yang ingin Anda hapus dalam permintaan DeleteObject, OSS membuat penanda hapus sebagai versi saat ini dari objek dan menyertakan header ini dalam respons untuk menunjukkan ID versi dari penanda hapus yang dibuat.

  • Jika Anda menentukan ID versi objek yang ingin Anda hapus dalam permintaan DeleteObject, OSS menyertakan header ini dalam respons untuk menunjukkan ID dari versi objek yang dihapus.

Tanggapan terhadap permintaan ini berisi header respons umum. Untuk informasi lebih lanjut tentang header respons umum, lihat Header Respons Umum.

Contoh

  • Hapus objek dari bucket tanpa versi.

    Permintaan Contoh

    DELETE /AK.txt HTTP/1.1
    Host: test.oss-cn-zhangjiakou.aliyuncs.com
    Accept-Encoding: identity
    User-Agent: aliyun-sdk-python/2.6.0(Windows/7/AMD64;3.7.0)
    Accept: text/html
    Connection: keep-alive
    Date: Wed, 02 Jan 2019 13:28:38 GMT
    authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
    Content-Length: 0

    Tanggapan Contoh

    HTTP/1.1 204 No Content
    Server: AliyunOSS
    Date: Wed, 02 Jan 2019 13:28:38 GMT
    Content-Length: 0
    Connection: keep-alive
    x-oss-request-id: 5C2CBC8653718B5511EF4535
    x-oss-server-time: 134
  • Hapus objek dari bucket yang diberi versi tanpa menentukan ID versi.

    Dalam hal ini, OSS menambahkan penanda hapus ke objek dan menyertakan header x-oss-delete-marker=true dalam respons.

    Permintaan Contoh

    DELETE /example HTTP/1.1
    Host: versioning-delete.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 04:08:23 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e

    Tanggapan Contoh

    HTTP/1.1 204 NoContent
    x-oss-delete-marker: true
    x-oss-version-id: CAEQMxiBgIDh3ZCB0BYiIGE4YjIyMjExZDhhYjQxNzZiNGUyZTI4ZjljZDcz****
    x-oss-request-id: 5CAC1AB7B7AEADE01700****
    Date: Tue, 09 Apr 2019 04:08:23 GMT
    Connection: keep-alive
    Server: AliyunOSS
  • Hapus versi objek dari bucket yang diberi versi dengan menentukan ID versi.

    Dalam hal ini, versi objek yang ditentukan dihapus secara permanen.

    Permintaan Contoh

    DELETE /example?versionId=CAEQOBiBgIDNlJeB0BYiIDAwYjJlNDQ4YjJkMzQxMmY5NTM5N2UzZWNiZTQ2**** HTTP/1.1
    Host: versioning-delete.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 04:11:54 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e

    Tanggapan Contoh

    HTTP/1.1 204 No Content
    x-oss-version-id: CAEQOBiBgIDNlJeB0BYiIDAwYjJlNDQ4YjJkMzQxMmY5NTM5N2UzZWNiZTQ2****
    x-oss-request-id: 5CAC1B8AB7AEADE01700****
    Date: Tue, 09 Apr 2019 04:11:54 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
  • Hapus penanda hapus dari bucket yang diberi versi dengan menentukan ID versi dari penanda hapus.

    Dalam contoh berikut, versi yang ditentukan adalah penanda hapus. Header x-oss-delete-marker=true disertakan dalam respons.

    Permintaan Contoh

    DELETE /example?versionId=CAEQOBiBgIDNlJeB0BYiIDAwYjJlNDQ4YjJkMzQxMmY5NTM5N2UzZWNiZTQ2**** HTTP/1.1
    Host: versioning-delete.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 04:16:25 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e

    Tanggapan Contoh

    HTTP/1.1 204 No Content
    x-oss-delete-marker: true
    x-oss-version-id: CAEQNhiBgIDFtp.B0BYiIDk4NzgwMmU4NDMyOTQyM2NiMDQxOTcxYWNhMjc1****
    x-oss-request-id: 5CAC1C99B7AEADE01700****
    Date: Tue, 09 Apr 2019 04:16:25 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS

SDK

Anda dapat menggunakan SDK OSS untuk bahasa pemrograman berikut untuk memanggil DeleteObject:

ossutil

Untuk informasi tentang perintah ossutil yang sesuai dengan operasi DeleteObject, lihat delete-object.

Referensi

  • Untuk informasi tentang operasi API yang dapat Anda panggil untuk menghapus beberapa objek sekaligus, lihat DeleteMultipleObjects.

  • Untuk informasi tentang cara menghapus objek secara otomatis, lihat Lifecycle.

Kode kesalahan

Kode kesalahan

Kode status HTTP

Deskripsi

FileImmutable

409

Anda mencoba menghapus atau memodifikasi data yang dilindungi. Selama periode perlindungan, data dalam bucket tidak dapat dihapus atau dimodifikasi.

FileAlreadyExists

409

Objek yang ingin Anda hapus adalah direktori dalam bucket yang fitur namespace hierarkisnya diaktifkan.