阿里云首页 阿里云SDK

Endpoint 配置

本节主要介绍原版 SDK 如何设置 Endpoint。

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

很多时候会遇到无法找到 Endpoint,需要手动设置 Endpoint 的情况。原版 SDK 提供了两种 Endpoint 的寻址方式,下面按优先级排列:

  1. 用户自定义: 是优先级最高的寻址逻辑,可以直接指定 Endpoint 的具体内容。

// 全局生效
IClientProfile profile = DefaultProfile.GetProfile("<regionId>", "<ACCESS_KEY_ID>", "<ACCESS_KEY_SECRET>");
profile.AddEndpoint("<endpointName>", "<regionId>", "<product>", "<domain>");

// 只对当前 Request 生效
DescribeRegionsRequest request = new DescribeRegionsRequest();
request.SetEndpoint("<Endpoint>");

2. Endpoint 拼接规则:在请求 VPC 网络时或产品 SDK 具有 Endpoint 数据文件时,当前寻址逻辑才会生效。 Endpoint 数据文件示例(Ecs Endpoint Data File)。

// 公网请求
request.ProductNetwork = "public"; // 因为 `productNetwork` 的默认值为 `public`,所以默认情况下不需要配置 `productNetwork`

// 跨域请求
request.ProductNetwork = "share";

// Ipv6 请求
request.ProductNetwork = "ipv6";

// 代理请求
request.ProductNetwork = "proxy";

// 内部请求
request.ProductNetwork = "inner";

// Ipv4/Ipv6 双协议栈
request.ProductNetwork = "dualstack";

// vpc 请求
request.ProductNetwork = "vpc";