代码看起来像这样
var request = WebRequest.Create(new Uri(reqStr, UriKind.Absolute));
request.Method = "POST";
request.Timeout = 15000;
Stream dataStream = request.GetRequestStream();
WebResponse response = request.GetResponse();
var dataStreamResp = response.GetResponseStream();
我每10秒调用一次,它运行正常。如果我禁用本地连接,然后启用,它会计算工作。但是,当服务器重启时,我收到timout异常(服务器在重启后工作)。有什么问题?
答案 0 :(得分:0)
您的服务器似乎需要超过15秒的时间才能启动并开始处理请求。
如果请求正在处理并等待响应并且服务器关闭了连接而不是发送响应,那么您将获得一个不同的异常。
我建议安装Fiddler2并观察请求发生了什么。您应该能够在服务器启动后查看请求是否正在启动以及服务器在这种情况下执行的操作(关闭连接,最终发送响应等)。
然后您也可以使用Fiddler保存请求并在服务器重新启动后立即重播(在几秒钟内),以确认独立的HTTP客户端看到与您的代码相同的结果,这样您就会知道它不是&# 39;值得调试您的客户端代码,因为服务器中的问题需要很长时间才能启动。
哈罗德