Tüm Ürünler
Search
Belge Merkezi

:Bir nesnenin etiketlerini sorgulama (Go SDK V2)

Son Güncelleme:Oct 01, 2026

Bu konu, Go SDK V2 kullanarak bir nesnenin etiketlerinin nasıl sorgulanacağını açıklar.

Kullanım notları

  • Bu konudaki örnek kod, Çin (Hangzhou) bölgesi için bölge kimliği olarak cn-hangzhou değerini kullanır. Varsayılan olarak, bir paketteki kaynaklara erişmek için genel bir uç nokta kullanılır. Aynı bölgedeki diğer Alibaba Cloud hizmetlerinden paket kaynaklarına erişmek istiyorsanız dahili bir uç nokta kullanın. Object Storage Service (OSS) tarafından desteklenen bölgeler ve uç noktalar hakkında daha fazla bilgi için bkz. OSS bölgeleri ve uç noktaları.

  • Bu konuda, erişim kimlik bilgileri ortam değişkenlerinden alınır. Erişim kimlik bilgilerinin nasıl yapılandırılacağı hakkında daha fazla bilgi için bkz. Erişim kimlik bilgilerini yapılandırma.

  • Bir nesnenin etiketlerini sorgulamak için oss:GetObjectTagging iznine sahip olmanız gerekir. Daha fazla bilgi için bkz. RAM kullanıcılarına özel ilke atama.

Not
  • Nesne etiketleme, nesneleri tanımlamak için anahtar-değer çiftleri kullanır. Nesne etiketleme hakkında daha fazla bilgi için OSS Geliştirici Kılavuzu'ndaki Nesne etiketleme konusuna bakın.

  • Bir nesnenin etiketlerini sorgulama hakkında daha fazla bilgi için bkz. GetObjectTagging.

Örnek kod

Aşağıdaki kod, bir paketteki nesnenin etiketlerinin nasıl sorgulanacağını gösterir.

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"
)

// Define global variables.
var (
	region     string // The region in which the bucket is located.
	bucketName string // The name of the bucket.
	objectName string // The name of the object.
)

// Specify the init function used to initialize command line parameters.
func init() {
	flag.StringVar(&region, "region", "", "The region in which the bucket is located.")
	flag.StringVar(&bucketName, "bucket", "", "The name of the bucket.")
	flag.StringVar(&objectName, "object", "", "The name of the object.")
}

func main() {
	// Parse command line parameters.
	flag.Parse()

	// Check whether the region is specified.
	if len(region) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, region required")
	}

	// Check whether the name of the bucket is specified.
	if len(bucketName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, bucket name required")
	}

	// Check whether the name of the object is specified.
	if len(objectName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, object name required")
	}

	// Load the default configurations and specify the credential provider and region.
	cfg := oss.LoadDefaultConfig().
		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
		WithRegion(region)

	// Create an OSS client.
	client := oss.NewClient(cfg)

	// Create a request to query the tags of the object.
	getRequest := &oss.GetObjectTaggingRequest{
		Bucket: oss.Ptr(bucketName), // The name of the bucket.
		Key:    oss.Ptr(objectName), // The name of the object.
	}

	// Make the query request and process the results.
	getResult, err := client.GetObjectTagging(context.TODO(), getRequest)
	if err != nil {
		log.Fatalf("failed to get object tagging %v", err)
	}

	// Display the number of tags.
	log.Printf("get object tagging result:%#v\n", len(getResult.Tags))
}

İlgili Başlıklar

  • Bir nesnenin etiketlerini sorgulamak için kullanılan eksiksiz örnek koda GitHub üzerinden erişebilirsiniz.

  • Nesne etiketlerini sorgulamaya yönelik API işlemi hakkında daha fazla bilgi için bkz. GetObjectTagging.