我有一个在 VB.net 中编码的应用程序,它具有这种访问 Webservice 的方法,我遇到了这个错误,在搜索修复程序后我仍然没有运气。
错误:请求被中止:无法创建 SSL/TLS 安全通道。
'ServicePointManager.Expect100Continue = False
'ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
Dim request As HttpWebRequest = DirectCast(WebRequest.Create(url), HttpWebRequest)
Dim ErrMsg As String = String.Empty
Try
Dim response As WebResponse = request.GetResponse()
Using responseStream As Stream = response.GetResponseStream()
Dim reader As New StreamReader(responseStream, Encoding.UTF8)
Return reader.ReadToEnd()
End Using
Catch ex As WebException
ErrMsg = ex.Message.ToString
MsgBox(ErrMsg)
Dim errorResponse As WebResponse = ex.Response
Using responseStream As Stream = errorResponse.GetResponseStream()
Dim reader As New StreamReader(responseStream, Encoding.GetEncoding("utf-8"))
' log errorText
Dim errorText As [String] = reader.ReadToEnd()
End Using
Throw
End Try
Run Code Online (Sandbox Code Playgroud)
这是我的代码,我使用的是 VS2015 和 Windows 10。
非常感谢所有帮助。TIA
Mat*_*now 10
显然,您正在调用的 URL 需要TLS 1.1
或TLS 1.2
。
您可以启用TLS 1.1
或TLS 1.2
通过设置安全协议ServicePointManager.SecurityProtocol
:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
Run Code Online (Sandbox Code Playgroud)
.NET 4.0
支持高达TLS 1.0
while.NET 4.5
或更高 支持高达TLS 1.2
参考:
归档时间: |
|
查看次数: |
12203 次 |
最近记录: |