从https URL下载文件时出现WebClient错误

普拉迪普H

尝试从https URL(https://nvd.nist.gov/download/nvd-rss.xml下载xml文件

该URL可通过浏览器公开访问。

在控制台项目中使用C#Webclient。

但是获取异常如下

using (WebClient client = new WebClient())
{
        System.Net.ServicePointManager.SecurityProtocol =
            System.Net.SecurityProtocolType.Ssl3;
        client.DownloadFile(uri, @"c:\test\nvd-rss.xml");
}

$ exception {“基础连接已关闭:发送中发生意外错误。”} System.Net.WebException

尝试将所有属性(如SSL等)添加到system.Net,但没有帮助。

EVK

原因是相关站点仅支持TLS 1.2。在.NET中,默认值System.Net.ServicePointManager.SecurityProtocolSsl| Tls,这意味着.NET客户端默认情况下不支持Tls 1.2(在SSL协商期间,它不在支持的协议列表中列出该协议)。至少对于许多.NET Framework版本都是这种情况,不确定是否全部适用。但是.NET实际上确实支持TLS 1.2,要启用它,您应该这样做:

string uri = "https://nvd.nist.gov/download/nvd-rss.xml";
using (WebClient client = new WebClient())
{
     System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
     client.DownloadFile(uri, @"c:\test\nvd-rss.xml");
}

而且你应该没事。当然,最好支持多个TLS 1.2协议,因为System.Net.SecurityProtocolType是全局设置,并且并非所有站点都支持TLS 1.2:

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls12;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用WebClient从https下载文件时出错

来自分类Dev

HTTPS下载文件错误android 4.4

来自分类Dev

使用https下载文件的Grunt任务

来自分类Dev

从https url下载xml文件

来自分类Dev

通过HTTPS的SSL错误1409442E下载文件,TIdHTTP

来自分类Dev

使用带有https的python软件包请求下载文件时出错

来自分类Dev

如何使用HTTPS使用Node.js下载文件?

来自分类Dev

Jenkins插件可通过https远程下载文件

来自分类Dev

如何从服务器下载文件(sso和https)

来自分类Dev

通过身份验证从https下载文件

来自分类Dev

使用download.file()从HTTPS下载文件

来自分类Dev

使用Curl命令通过HTTPS下载文件

来自分类Dev

在Android的浏览器中从HTTPS下载文件

来自分类Dev

通过 https 连接并下载文件 ionic3

来自分类Dev

PHP 不适用于 https,而是下载文件

来自分类Dev

使用wget下载HTTPS文件时出错

来自分类Dev

使用https浏览网站时出现错误

来自分类Dev

使用https浏览网站时出现错误

来自分类Dev

从Sharepoint Rest API下载文件时出现400错误

来自分类Dev

下载文件时出现IE8错误

来自分类Dev

从Google Chrome下载文件时出现网络错误失败

来自分类Dev

错误:发出HTTPS / HTTP请求时出现getaddrinfo ENOTFOUND错误

来自分类Dev

下载文件页面出现NoReverseMatch错误

来自分类Dev

下载文件但出现权限错误

来自分类Dev

PHP Curl从https URL下载空文件(.gz)

来自分类Dev

下载文件时出现NotSupportedException

来自分类Dev

通过Https使用基本身份验证的骆驼http4下载文件

来自分类Dev

VBA WinHTTP从密码保护的https网站下载文件

来自分类Dev

使用QNetworkAccessManager通过HTTPS下载文件:如何进行身份验证?

Related 相关文章

热门标签

归档