HTTPS 请求配置

更新时间:

V1.0 SDK 默认采用HTTP协议。若您需要使用更安全的HTTPS协议,请根据本文指引进行配置。

配置方式

请求的协议支持两种配置方式,优先级顺序为高到低:

  • 通过OpenAPI Request类的实例调用setSysProtocol()方法进行配置,仅对当前请求生效。示例代码如下:

    说明

    每个OpenAPI都有独立的Request类,命名方式为:${OpenAPI}${Request},例如DescribeInstancesRequest。

    com.aliyuncs.ecs.model.v20140526.DescribeInstancesRequest request = new com.aliyuncs.ecs.model.v20140526.DescribeInstancesRequest();
    request.setSysProtocol(com.aliyuncs.http.ProtocolType.HTTPS);
  • 通过com.aliyuncs.http.HttpClientConfig类的setProtocolType()方法进行配置,全局生效。示例代码如下:

    com.aliyuncs.http.HttpClientConfig clientConfig = com.aliyuncs.http.HttpClientConfig.getDefault();
    clientConfig.setProtocolType(com.aliyuncs.http.ProtocolType.HTTPS);
重要

使用 HTTPS 协议访问 OpenAPI 时,SDK 会默认开启校验 SSL/TLS 证书有效性,若您代码环境没有证书环境,则会报错证书校验失败。

为保障生产环境通信安全,建议您保持开启,若在测试环境必须忽略证书校验,可以通过以下参数设置

com.aliyuncs.http.HttpClientConfig clientConfig = com.aliyuncs.http.HttpClientConfig.getDefault();
// 设置不校验服务端证书
clientConfig.setIgnoreSSLCerts(true)