如何修复“SSL连接无法建立,请参阅内部异常,”当尝试下载osu!化身

ou6hu8tu  于 2023-05-18  发布在  其他
关注(0)|答案(5)|浏览(329)

我想下载osu!头像使用它们,但不断得到这个错误:
无法建立SSL连接。
内部异常是:
System.Net.Http.HttpRequestException:无法建立SSL连接,请参阅内部异常。---> System.Security.Authentication.AuthenticationException:身份验证失败,请参阅内部异常。---> System.ComponentModel.Win32Exception:П о луче н о н е п р е д в и д е н н о е соб е н и е и л и о н о и м е е т н е п р а в и льный фо р м а т
示例URL:https://a.ppy.sh/10638551?1524507784.png
我尝试使用HttpClient和WebClient,但没有成功。

using(HttpClient client = new HttpClient())
{
     var resp = await client.GetAsync("https://a.ppy.sh/10638551?1547998515.jpeg");
     var responseStr = await resp.Content.ReadAsStringAsync();
     File.WriteAllText("html/avatars/avatar.jpeg", responseStr);
}
gab6jxml

gab6jxml1#

我发现这个博客帮助了我

ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, errors) =>
{
    // local dev, just approve all certs
    if (development) return true;
    return errors == SslPolicyErrors.None ;
};

https://www.khalidabuhakmeh.com/validate-ssl-certificate-with-servicepointmanager

lc8prwob

lc8prwob2#

在使用HttpClient之前,您应该设置HttpClientHandler;

var handler = new HttpClientHandler();

handler.ServerCertificateCustomValidationCallback += 
                (sender, certificate, chain, errors) =>
                {
                    return true;
                };

你的HttpClient代码必须为.net Core 3工作。*

holgip5t

holgip5t3#

我相信我们可能已经解决了这个确切的问题(或一个非常相似的问题)
在我们的例子中,我们得到了同样的异常,但奇怪的是,它只来自一台机器。
经过一些调查,我们使用这个软件(https://www.nartac.com/Products/IISCrypto/Download)来确定我们的盒子和我们试图联系的盒子之间没有共享密码套件。
我们使用该软件在我们的机器上启用了一个受支持的套件并重新启动。
一旦重新启动并运行,一切工作正常。
最终,这是一个机器配置问题,而不是编码问题。

[注:我与此软件或其公司没有任何联系,我相信可以使用其他方法来实现这一点,但我知道这对我们来说是有效的]

mrfwxfqh

mrfwxfqh4#

我遇到了类似的问题,现在可以填充模式和重建索引。注意:确保IIS已停止,并且服务中的所有Solr服务已停止。<services.msc>
步骤1:在docker中切换到Linux容器并切换回以前的容器。步骤2:在Windows PowerShell中以管理模式执行down.ps1和下面的列表

Stop-Service docker
Stop-service hns
Start-service hns
Start-Service docker
docker network prune

第3步:然后执行docker/clean.ps1第4步:执行\init.ps1步骤5:执行docker-compose up -d和up.ps1。
不确定实际步骤上的流程考虑,但它开始为我的设置填充和构建索引。

nhhxz33t

nhhxz33t5#

回答:

一段时间后,我发现我使用的图书馆有点糟糕。在那之后,我发现了Selenium
考虑到这一点,我开始使用Selenium WebDriver,并认为我可以对我需要的页面进行截图,然后我裁剪了该图像,并得到了我需要的内容。
所以没有必要继续这个问题。

相关问题