正在从 https url 下载 xml 文件
Downloading xml file from https url
我在从 HTTPS 网站下载文件时遇到问题,我正在使用 vb。
我有这段代码,它很简单,但主要问题是它需要在 Visual Studio 2003 中。
这是代码
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim client As New WebClient
' Download string.
client.DownloadFile("https://www.un.org/sc/suborg/sites/www.un.org.sc.suborg/files/consolidated.xml", "consolidated.xml")
End Sub
但在我开始项目后,我收到一条消息告诉我:
Additional information: The underlying connection was closed: Could not establish secure channel for SSL/TLS.
有什么方法可以绕过这个安全通道吗?
谢谢
如您所愿,但是文件需要是文件的完全限定路径,您必须写入它的权限。
尝试创建一个临时文件,看看是否可行:
'create a temp file
Dim path = IO.Path.GetTempPath()
Dim fileName = Guid.NewGuid().ToString() + ".xml"
Dim fullyQualifiedPath = IO.Path.Combine(path, fileName)
'download the file
Using client As New WebClient
client.DownloadFile("https://www.un.org/sc/suborg/sites/www.un.org.sc.suborg/files/consolidated.xml", fullyQualifiedPath)
End Using
'show the file so we can see what we downloaded
Process.Start(fullyQualifiedPath)
请注意,您应该将 WebClient 包装在 Using 块中,因为这会处理对象
我用这行代码解决了我的问题
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
如果有人需要 :)
@马特威尔科
这就是我使用 https 得到的结果:
请求已中止:无法创建 SSL/TLS 安全通道。
在 System.Net.WebClient.DownloadFile(Uri 地址,字符串文件名)
在 System.Net.WebClient.DownloadFile(字符串地址,字符串文件名)
使用 http 就可以了
我在从 HTTPS 网站下载文件时遇到问题,我正在使用 vb。 我有这段代码,它很简单,但主要问题是它需要在 Visual Studio 2003 中。 这是代码
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim client As New WebClient
' Download string.
client.DownloadFile("https://www.un.org/sc/suborg/sites/www.un.org.sc.suborg/files/consolidated.xml", "consolidated.xml")
End Sub
但在我开始项目后,我收到一条消息告诉我:
Additional information: The underlying connection was closed: Could not establish secure channel for SSL/TLS.
有什么方法可以绕过这个安全通道吗? 谢谢
如您所愿,但是文件需要是文件的完全限定路径,您必须写入它的权限。
尝试创建一个临时文件,看看是否可行:
'create a temp file
Dim path = IO.Path.GetTempPath()
Dim fileName = Guid.NewGuid().ToString() + ".xml"
Dim fullyQualifiedPath = IO.Path.Combine(path, fileName)
'download the file
Using client As New WebClient
client.DownloadFile("https://www.un.org/sc/suborg/sites/www.un.org.sc.suborg/files/consolidated.xml", fullyQualifiedPath)
End Using
'show the file so we can see what we downloaded
Process.Start(fullyQualifiedPath)
请注意,您应该将 WebClient 包装在 Using 块中,因为这会处理对象
我用这行代码解决了我的问题
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
如果有人需要 :)
@马特威尔科
这就是我使用 https 得到的结果:
请求已中止:无法创建 SSL/TLS 安全通道。 在 System.Net.WebClient.DownloadFile(Uri 地址,字符串文件名) 在 System.Net.WebClient.DownloadFile(字符串地址,字符串文件名)
使用 http 就可以了