Untuk mempermudah pemanggilan API, kami menyarankan Anda mengintegrasikan Alibaba Cloud SDK ke dalam proyek Anda. SDK ini menyederhanakan proses pengembangan, mempercepat integrasi fitur, dan secara signifikan mengurangi biaya operasional dan pemeliharaan (O&M). Topik ini menjelaskan cara mengintegrasikan Alibaba Cloud SDK V1.0 untuk Java ke dalam proyek Anda serta menggunakan SDK tersebut untuk pengembangan.
Prasyarat
JDK 1.6 atau versi yang lebih baru telah diinstal.
Instal SDK
Untuk menggunakan Alibaba Cloud SDK V1.0 untuk Java, Anda harus menginstal SDK layanan cloud dan pustaka inti (core library) SDK.
Cloud service SDK
SDK layanan cloud mencakup objek permintaan yang diperlukan untuk memanggil operasi API dan objek respons. Pada contoh ini, Elastic Compute Service (ECS) SDK V1.0 untuk Java dikonfigurasi sebagai dependensi Maven. Kode contoh berikut menunjukkan dependensi Maven tersebut.
<dependencies>
<!-- ecs V1.0 SDK -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-ecs</artifactId>
<version>5.11.7</version>
</dependency>
</dependencies>
Alibaba Cloud service SDK V1.0 untuk Java dinamai dengan format aliyun-java-sdk-${Service code}. Anda juga dapat melihat informasi SDK V1.0 untuk Java dari layanan Alibaba Cloud tertentu di SDK Center.
Core library of an SDK
Pustaka inti SDK mencakup objek client, logika signature, dan logika penanganan error—informasi yang diperlukan untuk memanggil operasi API. Kami menyarankan Anda mengonfigurasi pustaka inti SDK sebagai dependensi Maven. Kode contoh berikut menunjukkan dependensi Maven tersebut.
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>4.7.3</version>
</dependency>
Untuk informasi lebih lanjut mengenai versi pustaka inti, lihat Maven Repository: com.aliyun » aliyun-java-sdk-core.
Gunakan SDK
Contoh berikut menunjukkan cara menggunakan Alibaba Cloud SDK V1.0 untuk memanggil operasi API DescribeInstances dari ECS.
1. Inisialisasi client permintaan
Semua operasi API dipanggil menggunakan objek Client yang disediakan oleh pustaka inti. Sebelum memanggil operasi API, Anda harus menginisialisasi client permintaan. Pada contoh ini, client permintaan diinisialisasi menggunakan pasangan AccessKey. Untuk informasi lebih lanjut, lihat Kelola kredensial akses.
Pada contoh ini, pasangan AccessKey diperoleh dari variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET, yang harus dikonfigurasi sebelum menjalankan kode. Untuk informasi lebih lanjut, lihat Konfigurasi variabel lingkungan pada Linux, macOS, dan Windows.
com.aliyuncs.profile.DefaultProfile profile = com.aliyuncs.profile.DefaultProfile.getProfile(
"<REGION_ID>",
// Dapatkan ID AccessKey dari Pengguna Resource Access Management (RAM) dari variabel lingkungan.
System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"),
// Dapatkan Rahasia AccessKey dari Pengguna RAM dari variabel lingkungan.
System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
com.aliyuncs.IAcsClient client = new com.aliyuncs.DefaultAcsClient(profile);
Jika satu client SDK menangani beberapa thread, masalah keamanan dapat terjadi. Jika beberapa layanan Alibaba Cloud berbagi informasi profil yang sama, akses tidak sah mungkin terjadi. Kami menyarankan Anda menggunakan Alibaba Cloud SDK V2.0 untuk pengembangan.
2. Buat objek permintaan
Anda dapat menggunakan objek permintaan yang disediakan oleh SDK untuk mengenkapsulasi parameter permintaan.
Beri nama objek permintaan operasi API dengan format berikut: <Nama operasi API>Request.
com.aliyuncs.ecs.model.v20140526.DescribeInstancesRequest request = new com.aliyuncs.ecs.model.v20140526.DescribeInstancesRequest();
request.setRegionId("cn-hangzhou");
request.setInstanceIds(new com.google.gson.Gson().toJson(Arrays.asList("i-bp1fq61ktxxxxxxxxxxxx","i-bp1fq62ktxxxxxxxxxxxx"));
3. Lakukan permintaan API
Gunakan client permintaan yang dibuat pada Langkah 1 untuk memanggil operasi getAcsResponse. Parameter permintaan operasi tersebut adalah objek permintaan yang dibuat pada Langkah 2. Jika pemanggilan berhasil, objek respons akan dikembalikan.
Beri nama objek respons operasi API dengan format berikut: <Nama operasi API>Response.
com.aliyuncs.ecs.model.v20140526.DescribeInstancesResponse response = client.getAcsResponse(request);
System.out.println(new com.google.gson.Gson().toJson(response));
4. Tangani error
Jika terjadi error saat memanggil operasi API, Anda dapat menangkap ServerException dan ClientException untuk mendapatkan pesan error. Umumnya, error ClientException disebabkan oleh parameter yang tidak valid selama inisialisasi client, seperti parameter AccessKey yang tidak valid. Error ServerException dapat disebabkan oleh berbagai faktor. Anda dapat menghubungi layanan pelanggan untuk troubleshooting dan menyertakan ID permintaan.
Referensi
-
Untuk informasi lebih lanjut mengenai pengaturan SDK, seperti pengaturan proxy dan pengaturan timeout, lihat Pengaturan lanjutan.
-
Untuk informasi lebih lanjut mengenai cara membuat pasangan AccessKey, lihat Buat AccessKey.