WebClient.DownloadString(“https:// ....”)崩溃。没有例外

时间:2014-05-12 15:53:09

标签: vb.net https webclient

我在这里不知所措。我已经为我的网站创建了一个API(如果它具有任何价值,那么本地托管以便于开发)。我正在尝试通过简单的GET请求传递一些信息,但我遇到了一个大问题。

Dim wc As WebClient = New WebClient()
Dim ServerResponse As String = wc.DownloadString(New Uri(entireRequest))
MsgBox("This will NEVER be run")

以上代码正在一个单独的线程中运行。问题是,当调用DownloadString行时,之后不再运行其他代码。我尝试在该行之后设置断点,但没有一个被击中。

Try...Catch块无效。我试过捕获Net.WebExceptions和System.Exceptions。什么都没有被抓住。我End Try上的断点从未被击中..

我注意到只有entireRequest是https连接时才会发生这种情况。如果未加密,则不会发生此问题。

添加以下内容以忽略自签名证书不会做任何事情:

Public Class clsSSL
    Public Shared Function AcceptAllCertifications(ByVal sender As Object, ByVal certification As System.Security.Cryptography.X509Certificates.X509Certificate, ByVal chain As System.Security.Cryptography.X509Certificates.X509Chain, ByVal sslPolicyErrors As System.Net.Security.SslPolicyErrors) As Boolean
        Return True
    End Function
End Class

提前致谢!我做了很多搜索,你是我最后的希望!

1 个答案:

答案 0 :(得分:0)

由于这个问题解决了问题: Requesting html over https with c# Webclient

我只需要添加以下内容:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3

我仍然感到困惑的是,为什么我没有被提出任何例外。对此有何答案?