[C#] 使用HttpClient请求https地址报错的解决方案

当使用HttpClient请求HTTPS地址遇到报错时,下面将解析并提供可能的解决方案供参考。

文章目录

  • 异常代码
    • 无法定位错误的
    • 准确定位错误的
  • 常见错误
    • 错误1
    • 错误2
  • 解决问题
      • 生产环境
      • 开发环境

异常代码

首先,需要查看引发异常的代码部分,

无法定位错误的

以下代码抛出的异常,是无法定位错误的

HttpResponseMessage httpResponse = client.GetAsync(url).Result;

准确定位错误的

应改成这样

HttpResponseMessage responseMessage = client.GetAsync(url).GetAwaiter().GetResult();

由此可见,通过捕获抛出的异常并获取其中的错误信息,就可以准确定位到问题的所在。

常见错误

当遇到问题时,要准确地定位到错误所在。

如果错误属于以下两种情况中的任何一种,

错误1

根据验证过程,远程证书无效。

错误2

基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。

解决问题

以前普遍使用http请求, 现在https加密请求需要证书了,

如使用https请求操作不当,会引发证书信任问题,

要解决安全证书信任问题, 主要看使用环境

生产环境

如果是在生产安全环境用的, 就配置信任的证书,

添加代码如下


System.Net.ServicePointManager.Expect100Continue = true;
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12 | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls;client = new HttpClient();

开发环境

如果是在本地测试的, 可以先忽略安全证书信任问题

添加代码如下

var hander = new HttpClientHandler() { UseCookies = false, //设置为false,登陆后重定向的话不会自动带上cookies,需要手动给headers上加入cookies.AllowAutoRedirect = true
};hander.ClientCertificateOptions = ClientCertificateOption.Automatic;
//hander.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) =>
System.Net.ServicePointManager.ServerCertificateValidationCallback = (message, cert, chain, errors) =>
{// 在这里添加你的证书验证逻辑// 例如,永远返回true来允许所有证书(不推荐用于生产环境)return true;
};client = new HttpClient(hander);

写到这里,问题差不多就能得到解决了。

来出一道题娱乐一下吧, 知道下图中是什么游戏吗
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode 题目 120:三角形最小路径和

作者介绍:10年大厂数据\经营分析经验,现任字节跳动数据部门负责人。 会一些的技术:数据分析、算法、SQL、大数据相关、python,欢迎探讨交流 欢迎加入社区:码上找工作 作者专栏每日更新: LeetCode解锁1000题…

Linux提权--第三方软件MYSQL数据库提权(WEB+本地)

免责声明:本文仅做技术交流与学习,非法搞事后果自负... 目录 靶场镜像: 过程: 手工: 下载mysql udf poc 进行编译. 进入数据库进行UDF导出 下载(上传) 创建do_system函数调用 探针(./LinEnum.sh),查找suid权限. 配合使用find调用执行 工具: 过程: 外连不上? 隧道出…

矿用光缆型号和规格

管道矿用光缆生产厂家,矿用光缆特点是什么,矿用通信光缆 矿用光缆 MGTS光缆的结构是将250 m光纤套入高模量材料制成的松套管中,松套管内填充防水化合物。缆芯的中心是一根金属加强芯,对于某些芯数的光缆来说,金属加强…

K-RTD01和利时FW248中控卡件

K-RTD01和利时FW248中控卡件。 系统概述 的全称为保护工程师站及录波分析后台”是利用现代计算机和网络技术,K-RTD01和利时FW248中控卡件。实时收集变电站运行和故障信息,并通过对变电站的故障信息进行综合分析,K-RTD01和利时FW248中控卡件。…

并发编程实现

一、并行编程 1、Parallel 类 Parallel类是System.Threading.Tasks命名空间中的一个重要类,它提供数据并行和任务并行的高级抽象。 For和ForEach Parallel类下的For和ForEach对应着普通的循环和遍历(普通的for和foreach),但执行时会尝试在多个线程上…

Python中bisect模块

Python中bisect模块 在Python中,如果我们想维持一个已排序的序列,可以使用内置的bisect模块,例如: import bisect# 用于处理已排序的序列 inter_list [] bisect.insort(inter_list, 3) bisect.insort(inter_list, 2) bisect.in…

python3 Fatal error in launcher: Unable to create process using

python 环境变量 在window系统环境变量 path 中配置 python 的安装目录,目录层级至paython 的安转目录即可。 pip环境变量配置 在path 中增加配置 paython 安装目录下 Scripts 子目录的环境变量。 以上配置完成后,win R 打开命令窗口,输…

汽车商城系统

文章目录 汽车商城系统一、系统演示二、项目介绍三、部分功能截图四、部分代码展示五、底部获取项目源码(9.9¥带走) 汽车商城系统 一、系统演示 汽车商城 二、项目介绍 该汽车商城系统主要分为前台和后台两大功能模块,共包含两种…

利用“AnaTraf“网络流量分析仪轻松诊断和优化网络

网络性能监测和诊断(NPMD)是网络管理和优化的重要环节,准确快速地定位和排除网络故障对于保障业务正常运转至关重要。作为一款专业的网络流量分析设备,AnaTraf网络流量分析仪凭借其强大的流量分析和故障诊断功能,为网络管理者提供了一个高效的网络优化解决方案。 全面掌握网络…

【C++】————类与对象(上)-基础知识

目录 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 类的两种定义方式: 成员变量命名规则的建议: 4.类的访问限定符及封装 4.1 访问限定符 ​编辑 【面试题】问题:C中struct和class的区别是什么? 4.2 封装 【面试…

ipa 功能包调试,分区算法,覆盖算法测试

参考 wiki 流网络 flow network 解释 相关文章 ipa 分区算法 ipa 分区算法总结,部分算法图解 环境 ubuntu20,ros 版本 noetic 运行测试 按照 readme 提示进行测试,跳过第一个步骤,并不需要 turtlebot3。 执行第三个 launch 报…

【计算机网络篇】数据链路层(10)在物理层扩展以太网

文章目录 🍔扩展站点与集线器之间的距离🛸扩展共享式以太网的覆盖范围和站点数量 🍔扩展站点与集线器之间的距离 🛸扩展共享式以太网的覆盖范围和站点数量 以太网集线器一般具有8~32个接口,如果要连接的站点数量超过了…

17_基于Flash和RAM的的文件系统选择

嵌入式系统常见文件系统 本文主要讲述在嵌入式系统中,常见的基于flash和内存(RAM)的文件系统类型,具体选择要结合实际需求灵活选配。 一、基于 Flash 的文件系统 基于 Flash 的文件系统主要包括 JFFS2、 YAFFS、 Cramfs 和 Romfs 等,各种文件系统具有不同的特点,本文将分…

数据结构-二叉树-红黑树

一、红黑树的概念 红黑树是一种二叉搜索树,但在每个节点上增加一个存储位表示节点的颜色,可以是Red或者BLACK,通过对任何一条从根到叶子的路径上各个节点着色方式的限制,红黑树确保没有一条路径会比其他路径长出两倍,…

人工智能生成图像的兴起:区分事实与虚构

人工智能生成图像的兴起:区分事实与虚构 概述 在人工智能 (AI) 已融入我们日常生活的时代,人工智能生成图像的快速发展引发了人们对数字内容真实性的担忧。最近,人工智能生成的图像甚至欺骗了最敏锐的眼睛,这引发了人们对批判性…

饥荒服务器搭建centos

服务器环境需要64位32位不可用 uname -r 查看服务器版本 更新yum sudo yum update 安装依赖环境 sudo yum -y install glibc.i686 libstdc.i686 libcurl4-gnutls-dev.i686 libcurl.i686 screen 安装steam cd /home && mkdir steamcmd && cd steamcmd 国…

动态规划算法练习——计数问题

题目描述 给定两个整数 a 和 b,求 a 和 b 之间的所有数字中 0∼9 的出现次数。 例如,a1024,b1032,则 a 和 b 之间共有 9 个数如下: 1024 1025 1026 1027 1028 1029 1030 1031 1032 其中 0 出现 10 次,1 出现…

创新指南|设计冲刺 – 更快找到成功的创新方案

“ 设计冲刺(Design Sprint)” 一词与跑步无关,而且不局限于设计,它与引导团队加速创新密切相关。设计冲刺旨在帮助创新团队在很短的时间内解决一个极有价值的问题。本文将深入解析这一法宝:设计冲刺是什么&#xff1f…

会声会影2024中文汉化补丁器附免费激活码序列号

会声会影是一款由加拿大Corel公司发布的视频编辑软件,它以其功能丰富和用户友好的界面而闻名。会声会影2024是该系列的最新版本,它不仅继承了之前版本的强大功能,还引入了一系列新的特性和工具,使得视频编辑更加简单、高效且富有创…

智慧安监中的物联网主机E6000

物联网主机E6000的研发背景主要源于我国对物联网技术在安全生产、环境监测、火灾预警与防控、人员定位与紧急救援等领域的迫切需求。近年来,随着物联网技术的飞速发展,我国政府对智慧安监的重视程度不断提升,相关的政策扶持力度也在加大。在这…