Titik akhir adalah nama domain dari API layanan Alibaba Cloud. Sebagai contoh, titik akhir Elastic Compute Service (ECS) dapat berupa ecs.cn-hangzhou.aliyuncs.com. Setiap layanan Alibaba Cloud memiliki titik akhir unik yang mungkin berbeda berdasarkan wilayah. Topik ini menjelaskan cara mengonfigurasi titik akhir di Alibaba Cloud SDK V2.0 untuk Go.
Konfigurasikan titik akhir ke mana permintaan API dikirim
Alibaba Cloud SDK V2.0 menyediakan dua metode untuk mengonfigurasi titik akhir. Bagian berikut menjelaskan metode-metode tersebut berdasarkan prioritasnya dalam urutan menurun.
Tentukan titik akhir kustom. Anda dapat menentukan titik akhir saat menginisialisasi klien. Titik akhir dapat diperiksa di OpenAPI Explorer. Untuk informasi lebih lanjut, lihat bagian "Lampiran: Memeriksa titik akhir" dari topik ini.
func main() { config := &openapi.Config{ // Hilangkan konfigurasi kredensial. // Titik akhir yang ingin Anda akses. Endpoint: tea.String("<endpoint>"), } client, _err = ecs20140526.NewClient(config) }Tentukan ID wilayah kustom.
Jika SDK untuk layanan Alibaba Cloud mencakup objek hubungan antara ID wilayah dan titik akhir, serta ID wilayah yang ditentukan termasuk dalam objek hubungan, Anda dapat memperoleh titik akhir dari objek hubungan tersebut.
Jika SDK untuk layanan Alibaba Cloud tidak mencakup objek hubungan antara ID wilayah dan titik akhir atau ID wilayah yang ditentukan tidak termasuk dalam objek hubungan, titik akhir akan digabungkan secara otomatis berdasarkan aturan penggabungan.
func main() { config := &openapi.Config{ // Hilangkan konfigurasi kredensial. // Wilayah yang ingin Anda akses. RegionId: tea.String("<RegionId>"), } client, _err := ecs20140526.NewClient(config) }
Skenario di mana titik akhir VPC digunakan
Kami merekomendasikan agar Anda mengonfigurasi titik akhir VPC jika menggunakan SDK Alibaba Cloud untuk memanggil operasi API dengan persyaratan bisnis berikut:
Sistem bisnis ditempatkan baik di pusat data lokal maupun cloud. Modul bisnis yang berbeda dibangun berdasarkan jaringan VPC untuk membangun lingkungan cloud yang terisolasi. Pusat data berkomunikasi satu sama lain melalui Internet.
Pusat data cloud ditempatkan berdasarkan jaringan VPC. Ini berkomunikasi dengan pusat data lokal melalui sirkuit Express Connect untuk mengimplementasikan koneksi hybrid cloud, memastikan keamanan data pengguna inti, serta merespons fluktuasi beban kerja dan sinkronisasi data cepat.
Aplikasi yang ditempatkan berdasarkan jaringan VPC perlu menyediakan layanan eksternal, dengan beban kerja aplikasi yang berfluktuasi pada waktu yang berbeda. Dalam hal ini, beberapa alamat IP perlu berbagi bandwidth dan fluktuasi lalu lintas perlu dikurangi untuk mengurangi biaya.
Layanan cloud dibangun berdasarkan jaringan VPC. Untuk mengurangi latensi jaringan bagi pengguna di wilayah yang berbeda, sistem bisnis ditempatkan di node yang berbeda. Koneksi bandwidth tinggi antara node-node ini diperlukan untuk mengoptimalkan pengalaman pengguna.
Konfigurasikan titik akhir untuk meminta informasi autentikasi
Beberapa operasi API dapat dipanggil untuk mengonfigurasi titik akhir platform terbuka. Jika Anda tidak mengonfigurasi titik akhir, titik akhir publik default akan digunakan. Anda dapat menggunakan titik akhir untuk memanggil layanan autentikasi unggah file dan memperoleh informasi autentikasi serta informasi tentang bucket Object Storage Service (OSS) default.
Titik akhir yang digunakan untuk autentikasi. Anda dapat mengonfigurasi titik akhir virtual private cloud (VPC) untuk meminta informasi autentikasi melalui VPC. Informasi autentikasi digunakan untuk unggahan file.
// Hilangkan konfigurasi kredensial package main. import ( "encoding/json" "fmt" "os" openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client" facebody20191230 "github.com/alibabacloud-go/facebody-20191230/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" "github.com/alibabacloud-go/tea/tea" ) func main() { config := &openapi.Config{ // Hilangkan konfigurasi kredensial. // Wilayah yang ingin Anda akses. RegionId: tea.String("<RegionId>"), // Konfigurasikan titik akhir VPC berdasarkan ID wilayah. OpenPlatformEndpoint: tea.String("openplatform-vpc.cn-shanghai.aliyuncs.com"), } client, err := facebody20191230.NewClient(config) if err != nil { panic(err) } f, err := os.Open("Direktori file yang ingin Anda unggah di komputer Anda") if err != nil { panic(err) } request := &facebody20191230.DetectBodyCountAdvanceRequest{} request.SetImageURLObject(f) // Buat instance RuntimeOptions dan tentukan parameter runtime. runtime := &util.RuntimeOptions{} runtime.ReadTimeout = tea.Int(10000) resp, err := client.DetectBodyCountAdvance(request, runtime) if err != nil { panic(err) } // Respons, yang berisi body dan header yang dikembalikan oleh sisi server. body, err := json.Marshal(resp.Body) if err != nil { panic(err) } headers, err := json.Marshal(resp.Headers) if err != nil { panic(err) } fmt.Printf("body: %s\n", string(body)) fmt.Printf("header: %s\n", string(headers)) }Titik akhir yang digunakan untuk autentikasi. Anda dapat mengonfigurasi titik akhir VPC untuk meminta informasi autentikasi melalui jaringan internal atau VPC. Informasi autentikasi digunakan untuk unggahan file.
package main import ( "encoding/json" "fmt" "os" openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client" facebody20191230 "github.com/alibabacloud-go/facebody-20191230/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" "github.com/alibabacloud-go/tea/tea" ) func main() { config := &openapi.Config{ // Hilangkan konfigurasi kredensial. // Wilayah yang ingin Anda akses. RegionId: tea.String("<RegionId>"), // Konfigurasikan titik akhir VPC berdasarkan ID wilayah. OpenPlatformEndpoint: tea.String("openplatform-vpc.cn-shanghai.aliyuncs.com"), // Konfigurasikan titik akhir OSS yang ingin Anda gunakan untuk mengunggah file. Jika Anda menyetel tipe titik akhir ke internal, Anda dapat menggunakan titik akhir internal untuk mengunggah file ke OSS melalui VPC atau jaringan klasik. Jika Anda menyetel tipe titik akhir ke accelerate, Anda dapat menggunakan titik akhir yang dipercepat di luar daratan Tiongkok untuk mengunggah file ke OSS. EndpointType: tea.String("internal"), } client, err := facebody20191230.NewClient(config) if err != nil { panic(err) } f, err := os.Open("Direktori file yang ingin Anda unggah di komputer Anda") if err != nil { panic(err) } request := &facebody20191230.DetectBodyCountAdvanceRequest{} request.SetImageURLObject(f) // Buat instance RuntimeOptions dan tentukan parameter runtime. runtime := &util.RuntimeOptions{} runtime.ReadTimeout = tea.Int(10000) resp, err := client.DetectBodyCountAdvance(request, runtime) if err != nil { panic(err) } // Respons, yang berisi body dan header yang dikembalikan oleh sisi server. body, err := json.Marshal(resp.Body) if err != nil { panic(err) } headers, err := json.Marshal(resp.Headers) if err != nil { panic(err) } fmt.Printf("body: %s\n", string(body)) fmt.Printf("header: %s\n", string(headers)) }
Lampiran: Periksa titik akhir
Anda dapat memeriksa titik akhir di OpenAPI Explorer.
Pilih layanan Alibaba Cloud di halaman utama OpenAPI Explorer. Dalam contoh ini, ECS dipilih.

2. Di halaman utama ECS, klik tab Regions.

3. Temukan wilayah yang ingin Anda tentukan dan salin titik akhir ECS di wilayah tersebut.
Anda juga dapat memeriksa titik akhir ECS di halaman Debugging. Di halaman ini, gerakkan penunjuk ke Regions di panel navigasi di sebelah kiri untuk melihat titik akhir ECS.
