使用Python的requests库发送HTTPS请求时的SSL证书验证问题

问题描述

使用python的requests库去发送https请求,有时候不设置verify=False不报错,有时候又报错。

问题原因

使用Python的requests库发送HTTPS请求时,设置verify=False参数可以跳过SSL证书验证。默认情况下,requests库会验证SSL证书以确保请求的安全性。然而,在某些情况下,可能会出现以下几种情况:

1、证书验证错误:如果服务端的SSL证书无效或无法验证,requests库会抛出requests.exceptions.SSLError异常。在这种情况下,您需要确保服务端的SSL证书是有效的,并且在客户端进行验证。

2、CA证书根目录缺失:如果您使用的是自签名证书或者是不受常规CA(Certificate Authority)信任的证书,requests库会抛出requests.exceptions.SSLError异常。为了解决这个问题,您可以通过将CA证书根目录(如.pem文件)添加到requests库的verify参数中,来进行自定义证书验证。

3、代理问题:如果您通过代理服务器发送请求,可能会导致请求的SSL证书验证失败。此时,您可以尝试在代理服务器上禁用SSL证书验证,或者在requests库中设置verify=False参数来跳过验证。

请注意,在安全的生产环境中,强烈建议启用SSL证书验证,以确保通信的安全性。只有在开发和测试阶段,或者确认服务端证书有效的情况下,才应该考虑使用verify=False来跳过SSL验证。

相关推荐
___波子 Pro Max.26 分钟前
Python参数解析默认True变False
python
橙露40 分钟前
面向对象编程思想:Java 与 Python 的封装、继承与多态对比分析
java·开发语言·python
Jia ming40 分钟前
《智能法官软件项目》—法条检索模块
python·教学·案例·智能法官软件
LitchiCheng1 小时前
Mujoco 如何添加 Apriltag 并获得相机视野进行识别
人工智能·python·开源
一切尽在,你来1 小时前
LangGraph快速入门
人工智能·python·langchain·ai编程
啊哈哈121381 小时前
Python基本语法复盘笔记1(输入输出/字符串/列表)
开发语言·笔记·python
SCLchuck2 小时前
人工智能-概率密度估计
人工智能·python·概率论·概率密度估计
摩拜芯城IC2 小时前
PSD835G2-90UI 芯片参数资料意法半导体Flash PSD可编程系统微芯片
python·5g
清水白石0083 小时前
Python 缓存机制深度实战:从零打造带过期时间的记忆化装饰器
python·spring·缓存
Faker66363aaa3 小时前
中国传统园林建筑检测与识别---RetinaNet_PVT-M_FPN_1x_COCO原创
python