异常处理-System.IO.IOException: 由于远程方已关闭传输流,身份验证失败


 

在.NET 3.5下创建的WinForm程序调用Core 3.0 Web API时出现“IOException: 由于远程方已关闭传输流,身份验证失败”错误

HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(serviceUrl);
HttpWebResponse myResponse
= (HttpWebResponse)myRequest.GetResponse();//IOException: 由于远程方已关闭传输流,身份验证失败。

错误详细:

System.Net.WebException
HResult=0x80131509
Message=基础连接已经关闭: 发送时发生错误。
Source=<无法计算异常源>
StackTrace:
<无法计算异常堆栈跟踪>

内部异常 1:
IOException: 由于远程方已关闭传输流,身份验证失败。
View Code

解决办法:

HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(serviceUrl);
ServicePointManager.SecurityProtocol = (SecurityProtocolType)192 | (SecurityProtocolType)768 | (SecurityProtocolType)3072;
//4.5版本以上可使用:ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11;
HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
View Code

参考:

https://codeday.me/bug/20180824/224009.html

https://www.cnblogs.com/merray/p/6364863.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM