全部产品
Search
文档中心

阿里云SDK:Endpoint配置

更新时间:Aug 27, 2024

Endpoint是请求接口服务的网络域名,如 ecs.cn-hangzhou.aliyuncs.com。

Endpoint设置

V2.0 SDK提供了两种Endpoint设置方式,下面按优先级排列:

说明

建议您使用自定义Endpoint方式设置。

  1. 自定义Endpoint:用户可以通过在初始化客户端时指定Endpoint,产品的Endpoint可以通过OpenAPI 开发者门户的产品主页中查找,具体参考文末。

    from alibabacloud_tea_openapi.models import Config
    
    config = Config(
        # 省略凭证配置
        endpoint='<endpoint>'  # endpoint
    )
    
  2. 自定义RegionId:

    • 若请求的产品SDK中存在RegionId和Endpoint关系对象,且传入的RegionId在该对象中时,则从关系对象中获取Endpoint。

    • 若请求的产品SDK没有RegionId和Endpoint关系对象,或者传入的RegionId不在关系对象中时,则根据拼接规则自动拼接Endpoint。

    from alibabacloud_tea_openapi.models import Config
    
    config = Config(
        # 省略凭证配置
        region_id='cn-hangzhou',  # 通过 regionId 映射到 endpoint
    )
    

VPC Endpoint使用场景

使用阿里云SDK方式调用OpenAPI时,若业务场景有以下需求,建议设置阿里云VPC Endpoint:

  • 业务系统同时存在于本地机房和云上机房,基于阿里云VPC搭建不同的业务模块,构建完全隔离的云上环境,云上云下通过公网进行业务交互。

  • 基于阿里云VPC搭建云上数据中心,通过专线与云下内部数据中心打通,进行用户核心数据安全保障,完美应对业务激增及数据快速同步,实现混合云方案。

  • 基于阿里云VPC搭建多个应用,各应用都需要对外提供服务,且其波峰时间点不一致,希望多IP共享带宽,尽量减小波峰波谷效应从而降低成本。

  • 云上业务完全基于VPC构建,用户遍布各个区域,为提升用户访问速度,业务系统同样位于不同节点,需实现各节点之间的网络高速互联。

获取文件上传授权码的Endpoint

部分OpenAPI支持设置开放平台Endpoint,如果不设置,则使用默认的公网服务地址。它底层业务逻辑是调用文件上传鉴权服务,获取鉴权和默认对象存储(OSS)的相关信息。

  • 上传文件鉴权服务Endpoint,您可以在VPC环境配置VPC Endpoint来请求上传文件的鉴权信息。

from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions

from alibabacloud_facebody20191230.models import DetectBodyCountAdvanceRequest
from alibabacloud_facebody20191230.client import Client

runtime = RuntimeOptions()
config = Config(
    # 省略凭证配置
    region_id='cn-hangzhou',
    # 文件上传鉴权服务Endpoint
    open_platform_endpoint='openplatform-vpc.cn-shanghai.aliyuncs.com'
)

client = Client(config)
with open('test.txt', 'rb') as f:
    request = DetectBodyCountAdvanceRequest(image_urlobject=f)
    response = client.detect_body_count_advance(request, runtime)
    # response 包含服务端响应的 body 和 headers
    print(response.body)
    print(response.headers)
  • 上传文件鉴权服务的Endpoint,您可以在VPC或者内网环境配置VPC Endpoint来请求上传文件的鉴权信息。

from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions

from alibabacloud_facebody20191230.models import DetectBodyCountAdvanceRequest
from alibabacloud_facebody20191230.client import Client

runtime = RuntimeOptions()
config = Config(
    # 省略凭证配置
    region_id='cn-hangzhou',
    open_platform_endpoint='openplatform-vpc.cn-shanghai.aliyuncs.com',
    endpoint_type='internal'  # 设置通过 OSS 内网地址上传文件
)

client = Client(config)
with open('test.txt', 'rb') as f:
    request = DetectBodyCountAdvanceRequest(image_urlobject=f)
    response = client.detect_body_count_advance(request, runtime)
    # response 包含服务端响应的 body 和 headers
    print(response.body)
    print(response.headers)

附:Endpoint查找方式

产品的Endpoint可以通过在OpenAPI门户上寻找:

  1. 在门户顶部菜单选择云产品,例如ECS:

image.png

2. 在云产品主页找到服务区域列表

image.png

3. 选择相应RegionId所对应的Endpoint,进行复制粘贴即可。

还可以在API调试界面,在左侧栏单击服务区域,查看云产品支持的Endpoint。

image