Tüm Ürünler
Search
Belge Merkezi

Alibaba Cloud SDK:Integrate an SDK

Son Güncelleme:Oct 07, 2026

V1.0 Python SDK'yi projenize entegre ederek OpenAPI çağrılarını basitleştirin, özellik entegrasyonunu hızlandırın ve bakım maliyetlerini düşürün.

Ortam Gereksinimleri

Python >= 3,7

SDK'yı Yükleme

Bir ürün SDK'si yüklediğinizde çekirdek SDK otomatik olarak kurulur. Yalnızca ürün SDK'sini yüklemeniz yeterlidir.

Ürün SDK'si

Bir ürün SDK'si, OpenAPI çağrıları için Request ve Response nesnelerini sağlar. Örneğin, ECS SDK'sini yüklemek için aşağıdaki komutu çalıştırın:

pip install aliyun-python-sdk-ecs

V1.0 SDK'nin adlandırma kuralı aliyun-python-sdk-${product_code} şeklindedir. Belirli ürünler için V1.0 SDK'lerini SDK Center üzerinden de bulabilirsiniz.

Çekirdek SDK

Çekirdek SDK, Client nesnesini, istek imzalamayı ve hata yönetimini sağlar. Genel çağrılar yapmak veya belirli bir çekirdek SDK sürümünü yüklemek için aşağıdaki komutu çalıştırın:

pip install aliyun-python-sdk-core

Kullanılabilir sürümleri aliyun-python-sdk-core · PyPI adresinden görüntüleyebilirsiniz.

SDK'yı Kullanma

Aşağıdaki örnekte, V1.0 SDK kullanılarak ECS DescribeInstances API'si çağrılmaktadır.

1. İstek istemcisini başlatın

Tüm OpenAPI çağrıları, çekirdek SDK'deki Client nesnesi üzerinden yapılır. Herhangi bir API'yi çağırmadan önce istemciyi başlatın. Bu örnekte bir AccessKey çifti kullanılmaktadır. Diğer kimlik bilgisi türleri için bkz. Erişim kimlik bilgilerini yönetme.

Not

Kodu çalıştırmadan önce ALIBABA_CLOUD_ACCESS_KEY_ID ve ALIBABA_CLOUD_ACCESS_KEY_SECRET ortam değişkenlerini ayarlayın. Linux, macOS ve Windows'ta ortam değişkenlerini yapılandırma.

import os

from aliyunsdkcore.client import AcsClient

# Initialize the client
client = AcsClient(
    os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),  # Get the AccessKey ID of the RAM user from an environment variable
    os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),  # Get the AccessKey secret of the RAM user from an environment variable
    '<REGION_ID>'  # Region ID
)

2. Bir OpenAPI istek parametre nesnesi oluşturun

İstek parametrelerini ayarlamak için ürün SDK'sindeki Request nesnesini kullanın.

Not

Bir OpenAPI istek parametre nesnesinin adlandırma kuralı <OpenAPIName>Request şeklindedir.

from aliyunsdkecs.request.v20140526.DescribeInstancesRequest import DescribeInstancesRequest

# Construct a DescribeInstancesRequest object
request = DescribeInstancesRequest()
request.set_InstanceIds("[\"i-bp1dXXXXXXXXXXXX\"]")
request.set_PageSize(100)
request.set_PageNumber(1)

3. İsteği gönderin

İstemcide, 2. Adımdaki Request nesnesi ile do_action_with_exception metodunu çağırın. Başarılı bir çağrı, bir Response nesnesi döndürür.

response = client.do_action_with_exception(request)
print(response)

4. Hataları yönetin

Hataları yönetmek için ClientException ve ServerException istisnalarını yakalayın. ClientException genellikle geçersiz bir AccessKey gibi hatalı başlatma parametrelerini gösterir. ServerException'ın çeşitli nedenleri olabilir; Alibaba Cloud desteğiyle iletişime geçerken istisnadaki RequestId bilgisini sağlayın.

Tam kod örneği

import os

from aliyunsdkcore.acs_exception.exceptions import ClientException, ServerException
from aliyunsdkcore.client import AcsClient
from aliyunsdkecs.request.v20140526.DescribeInstancesRequest import DescribeInstancesRequest

try:
    # Initialize the client
    client = AcsClient(
        os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),  # Get the AccessKey ID of the RAM user from an environment variable
        os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),  # Get the AccessKey secret of the RAM user from an environment variable
        'cn-hangzhou'  # Region ID. cn-hangzhou is used as an example.
    )

    # Construct a DescribeInstancesRequest object
    request = DescribeInstancesRequest()
    request.set_InstanceIds("[\"i-bp1dXXXXXXXXXXXX\"]")
    request.set_PageSize(100)
    request.set_PageNumber(1)

    #  Send the request
    response = client.do_action_with_exception(request)
    print(response)
except ClientException as e:
    # This is for printing and demonstration purposes only. Handle exceptions with care. Do not ignore exceptions in your projects.
    print(e)
except ServerException as e:
    # This is for printing and demonstration purposes only. Handle exceptions with care. Do not ignore exceptions in your projects.
    print(e)

Referanslar