Integrasikan Python SDK V1.0 ke dalam proyek Anda untuk menyederhanakan panggilan OpenAPI, mempercepat integrasi fitur, dan mengurangi biaya pemeliharaan.
Persyaratan lingkungan
Python >= 3.7
Instal SDK
Menginstal SDK produk secara otomatis akan menginstal SDK inti. Anda hanya perlu menginstal SDK produk.
SDK Produk
SDK produk menyediakan objek Request dan Response untuk panggilan OpenAPI. Sebagai contoh, instal SDK ECS:
pip install aliyun-python-sdk-ecs
Konvensi penamaan untuk SDK V1.0 adalah aliyun-python-sdk-${product_code}. Anda juga dapat menemukan SDK V1.0 untuk produk tertentu di SDK Center.
SDK Inti
SDK inti menyediakan objek Client, penandatanganan request, dan penanganan exception. Untuk melakukan panggilan umum atau menginstal versi SDK inti tertentu, jalankan:
pip install aliyun-python-sdk-core
Lihat versi yang tersedia di aliyun-python-sdk-core · PyPI.
Gunakan SDK
Contoh berikut memanggil API ECS DescribeInstances dengan SDK V1.0.
1. Inisialisasi client request
Semua panggilan OpenAPI melewati objek Client di SDK inti. Inisialisasi client sebelum memanggil API apa pun. Contoh ini menggunakan pasangan AccessKey. Untuk jenis kredensial lainnya, lihat Kelola kredensial akses.
Sebelum menjalankan kode, atur variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET. Konfigurasikan variabel lingkungan di Linux, macOS, dan Windows.
import os
from aliyunsdkcore.client import AcsClient
# Inisialisasi client
client = AcsClient(
os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'), # Dapatkan ID AccessKey Pengguna RAM dari variabel lingkungan
os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'), # Dapatkan Rahasia AccessKey Pengguna RAM dari variabel lingkungan
'<REGION_ID>' # ID Region
)
2. Buat objek parameter request OpenAPI
Gunakan objek Request dari SDK produk untuk mengatur parameter request.
Konvensi penamaan untuk objek parameter request OpenAPI adalah <OpenAPIName>Request.
from aliyunsdkecs.request.v20140526.DescribeInstancesRequest import DescribeInstancesRequest
# Buat objek DescribeInstancesRequest
request = DescribeInstancesRequest()
request.set_InstanceIds("[\"i-bp1dXXXXXXXXXXXX\"]")
request.set_PageSize(100)
request.set_PageNumber(1)
3. Kirim request
Panggil do_action_with_exception pada client dengan objek Request dari Langkah 2. Panggilan yang berhasil akan mengembalikan objek Response.
response = client.do_action_with_exception(request)
print(response)
4. Tangani exception
Tangkap ClientException dan ServerException untuk menangani error. ClientException biasanya menunjukkan parameter inisialisasi yang salah, seperti AccessKey tidak valid. ServerException memiliki berbagai penyebab — sertakan RequestId dari exception saat menghubungi dukungan Alibaba Cloud.
Referensi
-
Konfigurasikan proxy, timeout, dan opsi lainnya di Konfigurasi lanjutan.