All Products
Search
Document Center

Object Storage Service:Hapus tag objek (Go SDK V2)

Last Updated:Nov 09, 2025

Topik ini menjelaskan cara menghapus tag objek menggunakan OSS SDK untuk Go V2.

Catatan penggunaan

  • Kode contoh dalam topik ini menggunakan ID wilayah cn-hangzhou untuk Wilayah Hangzhou, Tiongkok. Secara default, titik akhir publik digunakan untuk mengakses sumber daya di bucket. Jika Anda ingin mengakses sumber daya di bucket menggunakan layanan Alibaba Cloud lainnya di wilayah yang sama dengan bucket tersebut, gunakan titik akhir internal. Untuk informasi lebih lanjut tentang wilayah dan titik akhir yang didukung oleh OSS, lihat Wilayah dan Titik Akhir OSS.

  • Dalam topik ini, kredensial akses diperoleh dari variabel lingkungan. Untuk informasi lebih lanjut tentang cara mengonfigurasi kredensial akses, lihat Konfigurasikan kredensial akses.

  • Untuk menghapus tag objek, Anda harus memiliki izin oss:DeleteObjectTagging. Untuk informasi lebih lanjut, lihat Berikan Kebijakan Kustom kepada Pengguna RAM.

Catatan
  • Penandaan objek menggunakan pasangan kunci-nilai untuk mengidentifikasi objek. Untuk informasi lebih lanjut tentang penandaan objek, lihat Penandaan objek dalam Panduan Pengembang OSS.

  • Untuk informasi lebih lanjut tentang cara menghapus tag objek, lihat DeleteObjectTagging.

Kode contoh

Berikut adalah kode contoh untuk menghapus tag objek dalam sebuah bucket.

package main

import (
	"context"
	"flag"
	"log"

	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
)

// Tentukan variabel global.
var (
	region     string // Wilayah tempat bucket berada.
	bucketName string // Nama bucket.
	objectName string // Nama objek.
)

// Tentukan fungsi init yang digunakan untuk menginisialisasi parameter baris perintah.
func init() {
	flag.StringVar(&region, "region", "", "Wilayah tempat bucket berada.")
	flag.StringVar(&bucketName, "bucket", "", "Nama bucket.")
	flag.StringVar(&objectName, "object", "", "Nama objek.")
}

func main() {
	// Parsing parameter baris perintah.
	flag.Parse()

	// Periksa apakah nama bucket telah ditentukan.
	if len(bucketName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("parameter tidak valid, nama bucket diperlukan")
	}

	// Periksa apakah wilayah telah ditentukan.
	if len(region) == 0 {
		flag.PrintDefaults()
		log.Fatalf("parameter tidak valid, wilayah diperlukan")
	}

	// Periksa apakah nama objek telah ditentukan.
	if len(objectName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("parameter tidak valid, nama objek diperlukan")
	}

	// Muat konfigurasi default dan tentukan penyedia kredensial serta wilayah.
	cfg := oss.LoadDefaultConfig().
		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
		WithRegion(region)

	// Buat klien OSS.
	client := oss.NewClient(cfg)

	// Buat permintaan untuk menghapus tag objek.
	request := &oss.DeleteObjectTaggingRequest{
		Bucket: oss.Ptr(bucketName), // Nama bucket.
		Key:    oss.Ptr(objectName), // Nama objek.
	}

	// Hapus tag dan proses hasilnya.
	result, err := client.DeleteObjectTagging(context.TODO(), request)
	if err != nil {
		log.Fatalf("gagal menghapus penandaan objek %v", err)
	}

	// Tampilkan hasilnya.
	log.Printf("hasil penghapusan penandaan objek:%#v\n", result)
}

Referensi

  • Untuk kode contoh lengkap yang digunakan untuk menghapus tag objek, kunjungi Repositori GitHub.

  • Untuk informasi lebih lanjut tentang operasi API yang dapat Anda panggil untuk menghapus tag objek, lihat DeleteObjectTagging.