阿里云Python SDK支持使用HTTP和HTTPS协议发起API请求。大部分产品使用HTTP协议,但访问控制(RAM),安全令牌(STS)和密钥管理(KMS)等产品默认使用HTTPS协议发起API请求。

使用Python SDK时,您可以为某个请求指定使用HTTP或HTTPS协议,您也可以设置全局默认协议。

说明 产品的默认协议(HTTP/HTTPS)优先于设置的全局默认协议。此外,访问控制(RAM),安全令牌(STS)和密钥管理(KMS)的默认协议为HTTPS,不能使用HTTP协议。

添加OpenSSL依赖

阿里云Python SDK的HTTPS协议依赖Python的OpenSSL支持。要使用阿里云SDK通过HTTPS协议发送请求,您需要在Python中添加OpenSSL支持。

阿里云2000元代金券免费领,最新优惠1折抢购,2核4G云服务器仅799元/3年,新老用户同享,立即抢购>>>

运行python -c "import ssl"查看Python环境是否支持OpenSSL。运行后,如果没有出现ImportError: No module named ssl的错误信息,说明已经支持OpenSSL。

若没有OpenSSL支持,运行以下命令安装:

pip install pyopenssl

设置单个请求的HTTP/HTTPS协议

参考以下代码示例为一个接口设置HTTPS调用:

request = CreateInstanceRequest.CreateInstanceRequest() request.set_protocol_type("https") # 取值:"https" 或 "http"

设置全局默认协议

参考以下代码示例设置全局默认协议:

import aliyunsdkcore.request aliyunsdkcore.request.set_default_protocol_type("https") # 创建请求并调用 client.do_action_with_exception() 来发送请求