All Products
Search
Document Center

Object Storage Service:Kesalahan titik akhir terjadi saat Anda mengakses bucket di OSS melalui SDK

Last Updated:Mar 21, 2026

Gejala

Saat menggunakan SDK OSS untuk mengakses bucket, kesalahan berikut dikembalikan:

The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint

Penyebab

Parameter endpoint tidak ditentukan atau mengarah ke wilayah yang salah. Setiap bucket OSS terikat pada wilayah tempat bucket tersebut dibuat, dan setiap permintaan harus menggunakan titik akhir wilayah tersebut.

Sebagai contoh, jika bucket dibuat di wilayah Qingdao tetapi SDK diinisialisasi dengan titik akhir Hangzhou (oss-cn-hangzhou.aliyuncs.com), OSS akan menolak permintaan tersebut dengan kesalahan ini.

Solusi

Tetapkan parameter endpoint ke titik akhir wilayah tempat bucket Anda dibuat.

Contoh berikut menunjukkan pola inisialisasi yang benar.

import os
import oss2

# Gunakan titik akhir yang sesuai dengan wilayah tempat bucket Anda dibuat.
# Daftar lengkap titik akhir: https://www.alibabacloud.com/help/en/oss/user-guide/regions-and-endpoints
endpoint = 'https://oss-cn-qingdao.aliyuncs.com'  # Ganti dengan titik akhir wilayah bucket Anda

access_key_id     = os.environ.get('OSS_ACCESS_KEY_ID')
access_key_secret = os.environ.get('OSS_ACCESS_KEY_SECRET')

auth   = oss2.Auth(access_key_id, access_key_secret)
bucket = oss2.Bucket(auth, endpoint, 'examplebucket')
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;

// Gunakan titik akhir yang sesuai dengan wilayah tempat bucket Anda dibuat.
// Daftar lengkap titik akhir: https://www.alibabacloud.com/help/en/oss/user-guide/regions-and-endpoints
String endpoint = "https://oss-cn-qingdao.aliyuncs.com"; // Ganti dengan titik akhir wilayah bucket Anda

String accessKeyId     = System.getenv("OSS_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("OSS_ACCESS_KEY_SECRET");

OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

Ganti https://oss-cn-qingdao.aliyuncs.com dengan titik akhir aktual wilayah bucket Anda. Lihat Regions and endpoints untuk daftar lengkapnya.

Mengakses bucket di multiple wilayah

Jika aplikasi Anda mengakses bucket di wilayah yang berbeda, buat instance client terpisah untuk setiap wilayah dengan titik akhir yang sesuai.

import os
import oss2

access_key_id     = os.environ.get('OSS_ACCESS_KEY_ID')
access_key_secret = os.environ.get('OSS_ACCESS_KEY_SECRET')

auth = oss2.Auth(access_key_id, access_key_secret)

# Client untuk wilayah Qingdao
qingdao_bucket = oss2.Bucket(auth, 'https://oss-cn-qingdao.aliyuncs.com', 'examplebucket')

# Client untuk wilayah Hangzhou
hangzhou_bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'examplebucket')
String accessKeyId     = System.getenv("OSS_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("OSS_ACCESS_KEY_SECRET");

// Client untuk wilayah Qingdao
OSS qingdaoClient = new OSSClientBuilder().build(
    "https://oss-cn-qingdao.aliyuncs.com",
    accessKeyId,
    accessKeySecret
);

// Client untuk wilayah Hangzhou
OSS hangzhouClient = new OSSClientBuilder().build(
    "https://oss-cn-hangzhou.aliyuncs.com",
    accessKeyId,
    accessKeySecret
);

Referensi