我希望使用以下代码将简单的json发布到服务器:
var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://ipaddress:1237");
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = "{'params': {'auth_remoteaddr': '10.10.5.103', 'auth_type': 'ANONYMOUS', 'auth_name': 'ANONYMOUS', 'auth_pass': 'ANONYMOUS', 'login_auth_name': 'crm', 'login_auth_pass': 'crm1234', 'create_session': true, 'login_auth_type': 'ADMIN'}, 'method': 'login.login'}";
streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
}
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
}
但是当运行该代码时,得到以下错误:
附加信息:基础连接已关闭:连接意外关闭。
但是在过去服务成功没有问题,发生了什么?我该如何解决这个问题?
当服务器或其他网络设备意外关闭现有传输控制协议(TCP)连接时,会发生此问题。当服务器或网络设备上的超时值设置得太低时,可能会出现此问题。要解决此问题,请参阅分辨率A,D,E,F和O.如果服务器意外重置连接,例如未处理的异常导致服务器进程崩溃,也会出现此问题。分析服务器日志以查看是否存在此问题。
若要解决此问题,请确保您使用的是最新版本的.NET Framework。