客户端初始化和请求方式

更新时间:

本节为您介绍客户端的Client初始化方式以及如何发起OpenAPI请求。

SDK客户端初始化

在V1.0 SDK中,所有的云产品都共用同一个客户端。该客户端通过Core SDK中的方法初始化生成一个Client对象来处理所有的请求。

说明

示例采用读取环境变量的方式创建凭证,运行代码前需配置环境变量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET。具体操作,请参见在Linux、macOS和Windows系统配置环境变量

pip install aliyun-python-sdk-core
import os

from aliyunsdkcore.client import AcsClient

# 初始化Client
client = AcsClient(
    os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),  # 从环境变量中获取RAM用户的AccessKey ID
    os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),  # 从环境变量中获取RAM用户AccessKey Secret
    '<region_id>'  # 地域ID
)

OpenAPI请求方式

在V1.0 SDK中,所有OpenAPI请求均通过SDK Core统一处理。云产品SDK中提供了OpenAPI的Request和Response对象,方便开发者简单应用,从而简化云服务调用与提高开发效率。以下是请求云服务器ECS DescribeRegions接口为例,有关请求参数和返回参数的描述,请参见各云产品文档中的API文档。

import os

from aliyunsdkcore.client import AcsClient
from aliyunsdkecs.request.v20140526.DescribeRegionsRequest import DescribeRegionsRequest

# 初始化Client
client = AcsClient(
    os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),  # 从环境变量中获取RAM用户的AccessKey ID
    os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),  # 从环境变量中获取RAM用户AccessKey Secret
    '<region_id>'  # 地域ID
)

# 创建API请求并设置参数
request = DescribeRegionsRequest()

# 发送请求
response = client.do_action_with_exception(request)
print(str(response, encoding='utf-8'))

进阶文档

更多客户端初始化方式,请参见管理访问凭据