-
建立连接:当你使用requests库发送HTTPS请求时,它会尝试与目标服务器建立安全的SSL连接。
-
获取服务器SSL证书:服务器会将自己的SSL证书发送给客户端(即你的请求)。
-
验证证书:requests库会验证服务器返回的SSL证书,验证包括以下几个步骤:
- 证书有效性:检查证书是否在有效期内。
- 证书颁发机构:验证证书是否由受信任的证书颁发机构签发。
- 主机名匹配:验证证书中的主机名是否与请求的主机名匹配。
-
建立安全连接:如果证书验证通过,requests库会使用SSL/TLS协议建立安全连接,确保通信的机密性和完整性。
如果SSL证书验证失败(比如证书过期、证书不受信任、主机名不匹配等),requests库会抛出一个证书验证错误,连接将无法建立。
当你设置verify=True
(默认情况下)时,requests库会执行上述验证过程。而当你设置verify=False
时,requests库会跳过证书验证步骤,直接建立连接,从而存在安全风险。
在生产环境中,建议始终保持SSL证书验证的开启状态(即verify=True
),以确保通信的安全性。如果遇到证书验证问题,应该尽快解