从传输流收到意外的 EOF 或 0 个字节

Posted 小水皮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从传输流收到意外的 EOF 或 0 个字节相关的知识,希望对你有一定的参考价值。


/// <summary> /// 发送POST请求 /// </summary> /// <param name="json"></param> /// <returns></returns> public static string HttpPost(string requestBody) { string responseMsg = ""; try { HttpWebRequest request; //设置https验证方式 if (url.StartsWith("https", StringComparison.OrdinalIgnoreCase)) { ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; request = WebRequest.Create(url) as HttpWebRequest; } else { request = WebRequest.Create(url) as HttpWebRequest; } request.ContentType = "application/x-www-form-urlencoded"; request.Method = "POST"; request.Timeout = HttpTimeOut; request.ReadWriteTimeout = HttpTimeOut; byte[] data = Encoding.Default.GetBytes(requestBody); using (Stream stream = request.GetRequestStream()) { stream.Write(data, 0, data.Length); } StreamReader sr = new StreamReader(request.GetResponse().GetResponseStream()); responseMsg = sr.ReadToEnd(); } catch (Exception ex) { LogHelper.WriteLog("HttpPost", ex); } return responseMsg;

}

 

最近用let‘s encrypt制作里的https证书,给网站改为Https.更改后之前做的一些http post请求报错,提示System.Net.WebException: 基础连接已经关闭: 发送时发生错误。 ---> System.IO.IOException: 从传输流收到意外的 EOF 或 0 个字节。Received an unexpected EOF or 0 bytes from the transport stream

最终在国外某网站找到解决方法,原来是自己的接口程序.net framework版本太低。改为.net 4.5以上版本即可

 

技术分享图片

 




以上是关于从传输流收到意外的 EOF 或 0 个字节的主要内容,如果未能解决你的问题,请参考以下文章

webservice部署到服务器报错

InputStream 没有收到 EOF

发送图像时出现 Python 套接字错误。无法解码字节/意外 EOF

php 文件读取方式

基准缓存字典导致“读取字节时出现意外的 EOF”

MTOM - [row,col unknown-source] 的序言中出现意外的 EOF:[1,0]