Gunakan Alibaba Cloud SDK untuk Node.js di Visual Studio Code (VS Code) pada Windows.
Prasyarat
-
Node.js telah diinstal. Instal Node.js di Windows.
-
VS Code telah diinstal. Siapkan lingkungan pengembangan Node.js di Windows.
Gunakan SDK
Gunakan proyek contoh dari OpenAPI Portal
Jika OpenAPI Portal gagal mengunduh proyek contoh, coba Gunakan SDK dalam proyek yang sudah ada.
-
Buka halaman API Debugging di OpenAPI Portal. Pilih produk cloud dan API. Contoh ini menggunakan API ECS DescribeRegions. Masukkan DescribeRegions di bilah pencarian, lalu klik nama API tersebut.
-
Pada tab Parameter Settings, masukkan parameter yang diperlukan. Tab Document di sebelah kanan menyediakan deskripsi API, catatan, informasi penagihan, dan detail parameter.
API DescribeRegions mendukung tiga parameter:
Nama Parameter
Wajib
Deskripsi
InstanceChargeType
Opsional
Wilayah yang didukung bervariasi berdasarkan metode penagihan. Default: PrePaid.
ResourceType
Opsional
Wilayah yang didukung bervariasi berdasarkan jenis resource. Default: instance.
AcceptLanguage
Opsional
Bahasa hasil respons. Default: zh-CN.
-
Pada tab paling kanan SDK Sample Code, pilih bahasa pemrograman, lalu klik Download Project untuk mengunduh proyek SDK lengkap ke komputer Anda. Kemudian, ekstrak paket tersebut.
Pilih SDK Version sebagai V2.0 Recommended.
-
Buka VS Code. Di bilah menu, klik File > Open Folder, lalu pilih folder hasil ekstraksi.
-
Di bilah menu VS Code, klik Terminal > New Terminal.
-
Di Terminal, jalankan perintah berikut untuk menginstal TypeScript.
npm install -g typescript -
Di Terminal, jalankan perintah berikut untuk menginstal dependensi proyek.
npm install -
Di Terminal, jalankan perintah berikut untuk mengompilasi file TypeScript menjadi JavaScript. File hasilnya ditempatkan di direktori
dist.tsc -
Di Terminal, jalankan perintah berikut untuk menjalankan kode contoh.
node ./dist/client.js -
Verifikasi hasilnya. Tekan
Ctrl+Fdi Terminal dan caristatusCode. Respons"statusCode": 200menunjukkan keberhasilan.
Gunakan SDK dalam proyek yang sudah ada
-
Buka VS Code. Klik File > Open Folder, lalu buat atau pilih folder proyek, misalnya tssdkproject.
-
Di bilah menu VS Code, klik Terminal > New Terminal.
-
Dapatkan SDK.
Buka SDK Center. Pilih produk cloud, seperti ECS. Atur SDK Version ke V2.0 dan Language ke TypeScript.
Pilih versi API 2014-05-26. Diperlukan Node.js >= 8.x. Di bagian instalasi, jalankan perintah instalasi NPM:
npm install --save @alicloud/ecs20140526@4.1.7. -
Instal SDK.
Salin perintah instalasi ke Terminal, lalu tekan Enter untuk menjalankannya.
-
Buat file. Di samping nama proyek, klik ikon New File dan masukkan nama file, misalnya ecsDescribeRegions.js.
-
Inisialisasi client.
Inisialisasi client ECS sebelum memanggil API ECS apa pun.
PentingAnda harus menggunakan Pasangan Kunci Akses (AccessKey pair) untuk menyelesaikan verifikasi identitas saat menginisialisasi client. Oleh karena itu, Anda harus memperoleh Pasangan Kunci Akses terlebih dahulu. Untuk informasi lebih lanjut tentang cara memperoleh Pasangan Kunci Akses, lihat Buat AccessKey.
Setelah memperoleh Pasangan Kunci Akses Pengguna RAM, Anda harus mengonfigurasi Pasangan Kunci Akses tersebut dalam Variabel lingkungan. Untuk informasi lebih lanjut, lihat Konfigurasi variabel lingkungan di Linux, macOS, dan Windows.
Untuk informasi lebih lanjut tentang cara mengonfigurasi endpoint, lihat Endpoints.
// Impor client ECS dan client OpenAPI. const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * Inisialisasi konfigurasi client ECS. * Konfigurasi ini menggunakan Access Key ID dan Access Key Secret dari variabel lingkungan untuk otentikasi dan menetapkan endpoint ke ecs.cn-hangzhou.aliyuncs.com. */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // Ambil Access Key ID dari variabel lingkungan. ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // Ambil Access Key Secret dari variabel lingkungan. ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // Tetapkan endpoint untuk layanan ECS. // Buat instans client untuk API ECS versi 20140526. const ecs20140526client = new ecs20140526.default(ecsconfig); -
Panggil API. Tinjau Dokumentasi API untuk API yang dituju. Contoh berikut memanggil API `DescribeRegions` dari ECS.
CatatanSetiap API memiliki objek permintaan terpisah yang mengikuti konvensi penamaan `${APIName}${Request}`, seperti `DescribeRegionsRequest`.
// Impor client ECS dan client OpenAPI. const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * Inisialisasi konfigurasi client ECS. * Konfigurasi ini menggunakan Access Key ID dan Access Key Secret dari variabel lingkungan untuk otentikasi dan menetapkan endpoint sisi server ke ecs.cn-hangzhou.aliyuncs.com. */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // Gunakan Access Key ID dari variabel lingkungan. ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // Gunakan Access Key Secret dari variabel lingkungan. ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // Tetapkan endpoint untuk layanan ECS. // Buat instans client untuk API ECS versi 20140526. const ecs20140526client = new ecs20140526.default(ecsconfig); const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest(); // Ajukan permintaan untuk mengkueri semua wilayah. ecs20140526client.describeRegions(describeRegionsRequest).then((res)=>{ console.log(res); }) -
Tangani exception.
Node.js V2.0 SDK melemparkan dua jenis exception: exception bisnis (kesalahan layanan) dan exception jaringan (dilemparkan setelah mencapai jumlah maksimum retry). Kode contoh tidak membedakan keduanya karena kelas exception tidak dapat diimpor dari modul eksternal.
// Impor client ECS dan client OpenAPI. const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * Inisialisasi konfigurasi client ECS. * Konfigurasi ini menggunakan Access Key ID dan Access Key Secret dari variabel lingkungan untuk otentikasi dan menetapkan endpoint sisi server ke ecs.cn-hangzhou.aliyuncs.com. */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // Gunakan Access Key ID dari variabel lingkungan. ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // Gunakan Access Key Secret dari variabel lingkungan. ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // Tetapkan endpoint untuk layanan ECS. // Buat instans client untuk API ECS versi 20140526. const ecs20140526client = new ecs20140526.default(ecsconfig); const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest(); // Ajukan permintaan untuk mengkueri semua wilayah. ecs20140526client.describeRegions(describeRegionsRequest).then((res) => { console.log(res); }).catch((err) => { console.log(err.message); throw err; }); -
Jalankan kode contoh.
-
Jika Code Runner telah diinstal, klik kanan di editor dan pilih Run Code.
-
Jalankan file dengan perintah node, misalnya,
node .\ecsDescribeRegions.js.Kode lengkap untuk file ecsDescribeRegions.js adalah sebagai berikut.
// impor sdk const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * inisialisasi Config client * tetapkan accessKeyId, accessKeySecret, endpoint */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // buat client ECS const ecs20140526client = new ecs20140526.default(ecsconfig); const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest(); // panggil describeRegions untuk mendapatkan wilayah ecs20140526client.describeRegions(describeRegionsRequest).then((res) => { console.log(res); }).catch((err) => { console.log(err.message); throw err; });Contoh output terminal setelah dijalankan:
PS D:\ide\nodejsprojects\tssdkproject> node .\ecsDescribeRegions.js DescribeRegionsResponse { headers: { date: 'Wed, 22 May 2024 10:16:52 GMT', 'content-type': 'application/json;charset=utf-8', 'content-length': '3326', connection: 'keep-alive', 'keep-alive': 'timeout=25', vary: 'Accept-Encoding', 'access-control-allow-origin': '*', 'access-control-expose-headers': '*', 'x-acs-request-id': 'AC778D54-5FCE-52A9-A8B8-F59B84C83A22', 'x-acs-trace-id': '1ba239a3bb30f7938e40cb9b43877234', etag: '2eJeo4u9ETUTqRZPYxeavA2' }, statusCode: 200, body: DescribeRegionsResponseBody { regions: DescribeRegionsResponseBodyRegions { region: [Array] }, requestId: 'B77D422C-C519-55E2-A4D5-87925423F7F1' } } -
Klik Run and Debug di sidebar atau tekan
Ctrl+Shift+D, lalu klik Run and Debug untuk menjalankan file aktif.// impor sdk const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * inisialisasi Config client * tetapkan accessKeyId, accessKeySecret, endpoint */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // buat client ECS const ecs20140526client = new ecs20140526.default(ecsconfig); const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest(); // panggil describeRegions untuk mendapatkan wilayah ecs20140526client.describeRegions(describeRegionsRequest).then((res) => { console.log(res); }).catch((err) => { console.log(err.message); throw err; });
-
-
(Opsional) Salin kode contoh dari OpenAPI Portal ke dalam file dan jalankan. Pembuatan kode SDK otomatis.