Paket, Object Storage Service (OSS) içinde depolanan nesneler için bir konteynerdir. OSS'deki tüm nesneler paketlerde saklanır. Paketler alfabetik sıraya göre listelenir. Mevcut Alibaba Cloud hesabınıza ait olan ve belirli koşulları karşılayan paketleri tüm bölgelerde listeleyebilirsiniz.
Kullanım notları
Bu konuda China (Hangzhou) bölgesinin genel uç noktası kullanılmaktadır. OSS ile aynı bölgedeki diğer Alibaba Cloud hizmetlerinden OSS'ye erişmek istiyorsanız dahili uç nokta kullanın. OSS bölgeleri ve uç noktaları hakkında daha fazla bilgi için bkz. Bölgeler 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.
Bu konuda bir OSS uç noktası kullanılarak bir OSSClient örneği oluşturulmaktadır. Özel etki alanı kullanımı veya Security Token Service (STS) kimlik bilgileriyle kimlik doğrulama gibi alternatif yapılandırmalar için bkz. İstemciyi yapılandırma (Go SDK V1).
Paketleri listelemek için
oss:ListBucketsiznine sahip olmanız gerekir. Daha fazla bilgi için bkz. Özel ilke atama.
Örnekler
Aşağıdaki örnek kod, mevcut Alibaba Cloud hesabındaki tüm bölgelerde bulunan paketlerin nasıl listeleneceğini gösterir:
package main
import (
"log"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func main() {
// Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured.
provider, err := oss.NewEnvironmentVariableCredentialsProvider()
if err != nil {
log.Fatalf("Failed to create credentials provider: %v", err)
}
// Create an OSSClient instance.
// Specify the endpoint of the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the endpoint to https://oss-cn-hangzhou.aliyuncs.com. Specify your actual endpoint.
// Specify the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the region to cn-hangzhou. Specify the actual region.
clientOptions := []oss.ClientOption{oss.SetCredentialsProvider(&provider)}
clientOptions = append(clientOptions, oss.Region("yourRegion"))
// Specify the version of the signature algorithm.
clientOptions = append(clientOptions, oss.AuthVersion(oss.AuthV4))
client, err := oss.New("yourEndpoint", "", "", clientOptions...)
if err != nil {
log.Fatalf("Failed to create OSS client: %v", err)
}
// List all buckets in all regions within the current Alibaba Cloud account.
marker := ""
for {
lsRes, err := client.ListBuckets(oss.Marker(marker))
if err != nil {
log.Fatalf("Failed to list buckets: %v", err)
}
// By default, a maximum of 100 buckets are listed at a time.
for _, bucket := range lsRes.Buckets {
log.Printf("Bucket: %s", bucket.Name)
}
if !lsRes.IsTruncated {
break
}
marker = lsRes.NextMarker
}
}
SSS
Adlarında belirli bir ön ek bulunan paketleri nasıl listelerim?
Adları marker parametresiyle belirtilen paketten sonra alfabetik olarak gelen paketleri nasıl listelerim?
Belirli sayıda paketi nasıl listelerim?
İlgili kaynaklar
Paketleri listelemek için kullanılan tam örnek kodu görmek üzere GitHub adresini ziyaret edin.
Paketleri listelemek için çağırabileceğiniz API işlemi hakkında daha fazla bilgi için bkz. ListBuckets.