解决requests库中session.verify参数失效的问题

在使用requests库进行HTTP请求时,如果在环境变量中设置了’REQUESTS_CA_BUNDLE’,并且在session对象中设置了verify参数为False,那么API请求会使用环境变量中的值而不是session对象中的值。这是因为在requests库中,当session对象中的verify参数被设置为False时,它会优先使用环境变量中的值。

这个问题的发起者(我)遇到了这个bug,它导致了API请求的安全性问题,因为本应该忽略证书验证的请求也会受到环境变量的影响。

解决方案
要解决这个问题,可以在调用session对象之前,先将’REQUESTS_CA_BUNDLE’环境变量设置为None,然后再设置session对象的verify参数。这样,API请求就会优先使用session对象中的值,而不是环境变量中的值。

以下是修改后的代码示例:

import requests
import os# 设置环境变量'REQUESTS_CA_BUNDLE'为None
os.environ['REQUESTS_CA_BUNDLE'] = None# 创建session对象
session = requests.Session()# 设置session对象的verify参数为False
session.verify = False# 发起HTTP请求
response = session.request(method, url="/".join([self.base_url, url]), headers=headers, data=body, params=query)

在上述代码中,首先将’REQUESTS_CA_BUNDLE’环境变量设置为None,然后创建一个session对象,并将session对象的verify参数设置为False。这样,无论环境变量中的值如何设置,API请求都会优先使用session对象中的值,从而解决了该问题。

通过这种方式,我们可以确保在需要忽略证书验证的情况下,session.verify参数不会被环境变量干扰,提高了API请求的安全性和可靠性。希望这篇文章对解决这个问题有所帮助。如果有任何疑问或需要进一步的解释,请随时提出。在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/193693.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

壹基金爱泽瑞金 安全家园物料配送忙

11月9日到10日,瑞金赋能公益陆续收到壹基金、阿里巴巴公益爱心网友捐赠的社区志愿者救援队队伍物资,马不停蹄地把物资配送到河背街社区、金都社区和沙洲坝镇等项目点,扎实稳妥推进项目有序执行。 在这次物资配送中,志愿者冒雨前行…

DC电源模块对效率有什么要求?

BOSHIDA DC电源模块对效率有什么要求? DC电源模块是现代科技中非常重要的组成部分,它是将交流电转换为直流电的装置,可以提供稳定的电源给各种设备和系统使用。效率是DC电源模块的一个关键性能指标,直接影响着模块的整体性能和效…

ssd202d-logo-cmd_bootlogo分析

cmd_bootlogo.c运行过程 common/autoboot.c:593: disp_logo(0); sprintf(cmd_str, "bootlogo %d 1 0 0 0", logo_id); do_display函数 获取对应结构体,里面有各种参数

Vim 从何而来?

Vim 编辑器的创造者、维护者和终身领导者 Bram Moolenaar 为了纪念这位杰出的荷兰程序员,我们今天来聊一聊 Vim 的历史。 Vim 无处不在。它被很多人使用。同时 Vim 可能是世界上 “最难用的软件之一” ,但是又多次被程序员们评价为 最受欢迎的 代码编辑…

vite动态配置svg图标及其他方式集合

文章目录 前言使用vite-plugin-svg-icons动态配置安装插件引入图标下载新建组件svg-icon.vue使用 使用vue组件动态配置总结如有启发,可点赞收藏哟~ 前言 在配置化的情况下,图标配置也显得极为重要的 使用vite-plugin-svg-icons动态配置 参考vite-plugin…

软件系统集成指南

软件产品集成是将各种软件组件、模块和代码组装成最终可执行、可应用的软件产品的过程。这个过程涉及到将工作产品转化为产品的组装过程。在软件工程中,产品集成是一个重要的环节,通过持续性集成,将产品集成的过程常态化、自动化。做好产品集…

2023 年 数维杯(B题)国际大学生数学建模挑战赛 |数学建模完整代码+建模过程全解全析

当大家面临着复杂的数学建模问题时,你是否曾经感到茫然无措?作为2021年美国大学生数学建模比赛的O奖得主,我为大家提供了一套优秀的解题思路,让你轻松应对各种难题。 让我们来看看数维杯(B题)! …

阿里云的99元服务器和腾讯云的88元云服务器选择哪个?怎么选?

近日,阿里云宣布在2023年双十一优惠活动中推出了一系列降价措施,使得同配置的云服务器比腾讯云更具竞争力。这一消息不仅在云计算领域引起了轰动,更为广大互联网用户提供了更为实惠的选择。 阿里云推出99元一年的服务器,续费价格…

[云原生2.] Kurbernetes资源管理 ---- (陈述式资源管理方式)

1. K8s管理资源的方法类别 1.1 陈述式资源管理方式 主要依赖命令行工具kubectl进行管理 可理解为使用一条命令和参数选项来实现资源的管理操作 1.2 声明式资源管理方式 主要依赖统一资源配置清单进行管理 可以理解为使用yaml配置文件的定义来实现资源的管理操作 1.3 GUI式…

算法-双指针-简单-移动零

记录一下算法题的学习2 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0] 示例 2…

【分享】Excel“只读方式”的两种模式

查阅Excel表格的时候,担心不小心修改了内容,可以给Excel设置以“只读方式”打开,这样就算修改了内容也不能直接保存表格。Excel表格可以设置两种“只读方式”,一起来看看吧! “只读方式” 1: 打开Excel表…

华为 Mate 60 Pro 拆解:陆制零件比率上升至47% | 百能云芯

近日,日经新闻联合研究公司Fomalhaut Techno Solutions对华为 Mate 60 Pro 进行了拆解,揭示了这款于8月发布的新型智能手机的成本结构。拆解结果显示,该手机的国产零部件比例达到了47%,相较于三年前的 Mate 40 Pro,提高…

S25FL256S介绍及FPGA实现思路

本文介绍 S25FL256S 这款 FLASH 芯片,并进行 FPGA 读写控制的实现(编程思路及注意事项)。 文章目录 S25FL-S 介绍管脚功能说明SPI 时钟模式SDRDDR 工作模式FLASH存储阵列(地址空间映射)常用寄存器及相关指令Status Reg…

Android 14 Beta 1

Android 14的第一个 Beta 版,围绕隐私、安全、性能、开发人员生产力和用户定制等核心主题构建,同时继续改进平板电脑、可折叠设备等大屏幕设备的体验。我们一直在完善 Android 14 的功能和稳定性方面取得稳步进展,现在是时候向开发者和早期采…

mysql之搭建MHA架构实现高可用

1、定义 全称是masterhigh avaliabulity。基于主库的高可用环境下可以实现主从复制及故障切换(基于主从复制才能故障切换) MHA最少要求一主两从,半同步复制模式 2、作用 解决mysql的单点故障问题。一旦主库崩溃,MHA可以在0-30…

Elasticsearch:检索增强生成 (Retrieval Augmented Generation -RAG)

作者:JOE MCELROY 什么是检索增强生成 (RAG) 以及该技术如何通过提供相关源知识作为上下文来帮助提高 LLMs 生成的响应的质量。 生成式人工智能最近取得了巨大的成功和令人兴奋的成果,其模型可以生成流畅的文本、逼真的图像,甚至视频。 就语…

二叉树的创建与遍历

目录 前言: 二叉树的概念与结构 二叉树的链式存储 二叉树的创建 二叉树的销毁 二叉树结点个数计算 二叉树叶子结点个数计算 二叉树第k层节点个数的计算 二叉树高度的计算 二叉树查找值为x的结点 二叉树的遍历 二叉树的前序遍历 二叉树的中序遍历 二叉树…

代码随想录算法训练营第五十五天 | LeetCode 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结

代码随想录算法训练营第五十五天 | LeetCode 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结 文章链接:两个字符串的删除操作、编辑距离、编辑距离总结 视频链接:两个字符串的删除操作、编辑距离 1. LeetCode 583. 两个字符串的删除操作 1.1 思…

计算机编程入门软件,计算机编程初学入门什么语言

计算机编程入门软件,计算机编程初学入门什么语言 给大家分享一款中文编程工具,零基础轻松学编程,不需英语基础,编程工具可下载。 这款工具不但可以连接部分硬件,而且可以开发大型的软件,象如图这个实例就是…

科研学习|研究方法——逻辑回归系数的显著性检验(python实现)

1. 背景 回归方程与回归系数的显著性检验 2. statsmodels 库 statsmodels库可以用来做逻辑回归、线性回归。并且会在summary中给出显著性检验的结果。最终我们想要的就是如下图的报告。 3. 计算过程 如果我们使用的sklearn构建的逻辑回归就没有办法直接输出这个报告&#xff0c…