SDK 中可以通过在 Client 中设置 OpenAPI 的请求协议,请尽量使用 HTTPS。若不设置则用 OpenAPI 默认支持的协议类型(HTTPS):
public static void Main(string[] args)
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
// Client HTTPS 参数设置
config.Protocol = "HTTPS";
config.Endpoint = "ecs.cn-beijing.aliyuncs.com";
AlibabaCloud.SDK.Ecs20140526.Client client = new AlibabaCloud.SDK.Ecs20140526.Client(config);
DescribeInstancesRequest request = new DescribeInstancesRequest();
// 通过 SDK Core 执行实际的 Http 请求将返回的结果序列化为 SDK 的 Response 结构
var response = client.DescribeInstances(request);
System.Console.WriteLine(response.Body.TotalCount);
}
重要
使用 HTTPS 协议访问 OpenAPI 时,SDK 会默认开启校验 SSL/TLS 证书有效性,若您代码环境没有证书环境,则会报错证书校验失败。
为保障通信安全,建议您保持开启,若在测试环境必须忽略证书校验,可以通过运行时参数IgnoreSSL
设置:
public static void Main(string[] args)
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
// Client HTTPS 参数设置
config.Protocol = "HTTPS";
config.Endpoint = "ecs.cn-beijing.aliyuncs.com";
AlibabaCloud.SDK.Ecs20140526.Client client = new AlibabaCloud.SDK.Ecs20140526.Client(config);
// 运行时参数设置,仅对使用了该运行时参数实例的请求有效
RuntimeOptions runtimeOptions = new RuntimeOptions();
// 忽略证书校验
runtimeOptions.IgnoreSSL = true;
DescribeInstancesRequest request = new DescribeInstancesRequest();
// 通过 SDK Core 执行实际的 Http 请求将返回的结果序列化为 SDK 的 Response 结构
var response = client.DescribeInstancesWithOptions(request, runtimeOptions);
System.Console.WriteLine(response.Body.TotalCount);
}