首页 > 后端开发 > C++ > 在 .NET Standard 中使用 HttpClient 时如何忽略不受信任的 SSL 证书?

在 .NET Standard 中使用 HttpClient 时如何忽略不受信任的 SSL 证书?

Susan Sarandon
发布: 2025-01-14 15:37:47
原创
461 人浏览过

How Can I Ignore Untrusted SSL Certificates When Using HttpClient in .NET Standard?

使用 HttpClient 绕过 .NET Standard 中的 SSL 证书验证

问题:

由于 SSL 证书不受信任,将 Windows 8 应用程序连接到测试 Web API 失败。 目标是找到类似于与 ServerCertificateValidationCallback 一起使用的 WebRequest 方法的解决方法。

解决方案:

以下是如何在 .NET Standard 中使用 HttpClient 绕过 SSL 证书验证,提供与 WebRequest 方法类似的功能:

  1. 实例化HttpClientHandler:

    <code class="language-csharp">var handler = new HttpClientHandler();</code>
    登录后复制
  2. 设置ClientCertificateOptions:

    <code class="language-csharp">handler.ClientCertificateOptions = ClientCertificateOption.Manual;</code>
    登录后复制
  3. 实现自定义证书验证: 始终返回 true 的 lambda 表达式会禁用证书验证:

    <code class="language-csharp">handler.ServerCertificateCustomValidationCallback = (_, __, ___, ____) => true;</code>
    登录后复制
  4. 创建 HttpClient: 使用修改后的处理程序创建 HttpClient 实例:

    <code class="language-csharp">var client = new HttpClient(handler);</code>
    登录后复制

此方法允许通过忽略证书验证来连接到测试 API。 但是,重要的是要了解这会显着降低安全性并使您的应用程序容易受到中间人攻击。 仅在受控测试环境中使用此功能,切勿在生产中使用。

以上是在 .NET Standard 中使用 HttpClient 时如何忽略不受信任的 SSL 证书?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板