在 .NET Core 2.2 中使用 SocketsHttpHandler 并忽略证书验证

Using SocketsHttpHandler in .NET Core 2.2 and ignoring cert validation

使用 HttpClientHandler,我们可以设置服务器验证回调和 return true(通过写出来或使用 DangerousAcceptAnyServerCertificateValidator)。在升级到 .NET Core 2.2 后将 HttpClient 切换为使用 SocketsHttpHandler 时,如何确保也绕过此验证?这是默认值吗?我目前找不到关于此主题的太多信息,我将部署到一个我想避免进行重大更改的环境。

@djsoteric 我遇到了同样的问题,这样解决了

public static HttpClient CreateHttpClient()
{
    var sslOptions = new SslClientAuthenticationOptions
    {
        // Leave certs unvalidated for debugging
        RemoteCertificateValidationCallback = delegate { return true; },
    };

    var handler = new SocketsHttpHandler()
    {
        SslOptions = sslOptions,
    };

    return new HttpClient(handler);
}