requests发送https请求(处理ssl证书验证)
Published in:2020-10-29 |

requests发送https请求(处理ssl证书验证)

1、SSL是什么,为什么发送HTTPS请求时需要证书验证?

1
2
3
4
5
6
7
8
9
10
11
12
1.1 SSL:安全套接字层。是为了解决HTTP协议是明文,避免传输的数据被窃取,篡改,劫持等。

1.2 TSL:Transport Layer Security,传输层安全协议。TSL其实是SSL标准化后的产物,即SSL/TSL

实际上是一个东西。

1.3 HTTPS:HTTPS是兼容HTTP的,可以把HTTPS理解为'HTTP over TSL',即HTTPS是HTTP协议

和TSL协议的组合。

1.4 HTTPS在传输数据时,同样会先建立TCP连接,建立起TCP连接后,会建立TSL连接.

1.5 请求可以为HTTPS请求验证SSL证书,就像web浏览器一样,SSL验证默认是开启的,

如果证书验证失败,请求会抛出SSLError:

1
2
3
4
5
>>>import requests

>>>requests.get('https:xxxx.com') #发起一个https请求

>>>requests.exceptions.SSLError: xx

1.7 HTTPS请求进行SSL验证或忽略SSL验证才能请求成功,忽略方式为verify=False

Prev:
七层网络结构
Next:
git 的入门