https – 如何在非Windows平台上忽略“System.Net.Http.CurlException:对等证书无
发布时间:2020-11-17 07:02:43 所属栏目:Windows 来源:互联网
导读:我在Microsoft Azure中部署了Kubernetes集群,并希望使用https从.Net Core c#程序调用一些REST API.部署群集时使用的证书不在受信任的CA中.当我在Mac上运行此程序时,我收到以下错误:“System.Net.Http.CurlException:对等证书无法使用给定的CA证书进行身份验
我在Microsoft Azure中部署了Kubernetes集群,并希望使用https从.Net Core c#程序调用一些REST API.部署群集时使用的证书不在受信任的CA中.当我在Mac上运行此程序时,我收到以下错误:“System.Net.Http.CurlException:对等证书无法使用给定的CA证书进行身份验证” 在Windows上,我可以设置自定义ServerCertificateValidationCallback以忽略错误: WinHttpHandler winHttpHandler = new WinHttpHandler(); winHttpHandler.ServerCertificateValidationCallback = ValidateServerCertificate; public static bool ValidateServerCertificate( HttpRequestMessage request,X509Certificate certificate,X509Chain chain,SslPolicyErrors sslPolicyErrors) { return true; } 但是,在非Windows平台上的.Net Core下不支持此功能. 如何忽略其他平台上的错误? 您可以使用.NET Core执行此操作.我们一直在使用1.1,2.0和2.1.这可以通过构造HttpHandler并将其传递给HttpClient构造函数来完成. HttpHandler有一个ServerCertificateCustomValidationCallback,您可以覆盖它以执行自定义证书验证. 样品: private HttpClient SampleBuildHttpClient() { return new HttpClient( new HttpClientHandler { ServerCertificateCustomValidationCallback = MyCallback,}); } private bool MyCallback(HttpRequestMessage reqMsg,X509Certificate2 cert,X509Chain certChain,SslPolicyErrors policyErrors) { //custom validation return true; } (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-8 – 在MetroStyle应用程序中使用COM对象
- batch-file – 用于在Windows 7中更改屏幕分辨率的批处理文
- windows-ce – 确定Windows CE可执行文件使用的16位CRC /校
- windows10 安装python.msi出现error 2502/2503解决方法
- windows-services – 首先是TopShelf,Ninject和EF代码的Nin
- windows-server-2008 – IIS可以从GPU核心创建线程吗?
- Windows – Win7 Virtualbox在尝试启动虚拟机时出现此错误:
- wpf – 使用WiX在应用程序的主要升级中从Windows 7任务栏中
- windows – 为什么没有64位版本的VS2013?
- DOS命令重定向到文件截断输出
推荐文章
站长推荐
热点阅读