All Products
Search
Document Center

Object Storage Service:Periksa apakah file ada (Go SDK V1)

Last Updated:Nov 29, 2025

Topik ini menjelaskan cara memeriksa keberadaan suatu file.

Catatan penggunaan

  • Pada topik ini, digunakan titik akhir publik wilayah China (Hangzhou). Jika Anda mengakses OSS dari layanan Alibaba Cloud lain yang berada di wilayah yang sama dengan OSS, gunakan titik akhir internal. Untuk informasi selengkapnya mengenai wilayah dan titik akhir OSS, lihat Regions and endpoints.

  • Pada topik ini, kredensial akses diperoleh dari variabel lingkungan. Untuk informasi selengkapnya tentang cara mengonfigurasi kredensial akses, lihat Configure access credentials.

  • Pada topik ini, instans OSSClient dibuat menggunakan titik akhir OSS. Jika Anda ingin membuat instans OSSClient menggunakan nama domain kustom atau Security Token Service (STS), lihat Configure a client (Go SDK V1).

  • Anda harus memiliki izin oss:GetObject untuk menentukan apakah suatu objek ada. Untuk informasi selengkapnya, lihat Attach a custom policy to a RAM user.

Kode contoh

Kode contoh berikut menunjukkan cara memeriksa keberadaan suatu file.

package main

import (
	"log"

	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
	// Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel.
	provider, err := oss.NewEnvironmentVariableCredentialsProvider()
	if err != nil {
		log.Fatalf("Failed to create credentials provider: %v", err)
	}

	// Buat instans OSSClient.
	// Setel yourEndpoint ke Endpoint bucket. Misalnya, untuk bucket di wilayah China (Hangzhou), setel nilainya ke https://oss-cn-hangzhou.aliyuncs.com. Untuk wilayah lain, sesuaikan nilainya.
	// Setel yourRegion ke wilayah tempat bucket berada. Misalnya, untuk bucket di wilayah China (Hangzhou), setel nilainya ke cn-hangzhou. Untuk wilayah lain, sesuaikan nilainya.
	clientOptions := []oss.ClientOption{oss.SetCredentialsProvider(&provider)}
	clientOptions = append(clientOptions, oss.Region("yourRegion"))
	// Setel versi signature.
	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)
	}

	// Setel yourBucketName ke nama bucket.
	bucketName := "yourBucketName" // Ganti dengan nama bucket yang sebenarnya.
	bucket, err := client.Bucket(bucketName)
	if err != nil {
		log.Fatalf("Failed to get bucket: %v", err)
	}

	// Periksa apakah file ada.
	// Setel yourObjectName ke path lengkap objek. Jangan sertakan nama bucket.
	objectName := "yourObjectName" // Ganti dengan path objek yang sebenarnya.
	isExist, err := bucket.IsObjectExist(objectName)
	if err != nil {
		log.Fatalf("Failed to check if object exists: %v", err)
	}
	log.Printf("Exist: %t\n", isExist)
}

Referensi

  • Untuk informasi selengkapnya mengenai operasi API untuk memeriksa keberadaan suatu file, lihat IsObjectExist.