代码看起来像这样
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 秒调用一次,它工作正常。如果我禁用我的本地连接,则启用 ,它计数工作。但是,当服务器重新启动时,我收到超时异常(服务器在重新启动后工作)。问题出在哪里?
您的服务器似乎需要超过 15 秒的时间来启动和启动服务请求。
如果请求正在进行并等待响应并且服务器关闭了连接而不是发送响应,则会收到不同的异常。
我建议安装 Fiddler2 并观察请求发生了什么。 您应该能够看到请求是否在服务器启动后启动,以及服务器在这种情况下做了什么(关闭连接,最终发送响应等)。
然后,您还可以使用 Fiddler 保存请求,并在服务器重新启动后立即重播(在几秒钟内)以确认独立的 HTTP 客户端看到与您的代码相同的结果,这样您就会知道不值得调试客户端代码,因为问题出在服务器中需要很长时间才能启动。
哈罗德