-1

我在带有计时器的函数内部使用 httpwebrequest.getresponse()。定时器每隔几秒调用一次这个函数。但是,有时 Web 服务器由于请求和响应快速而拒绝响应,因为计时器。

我需要确保该函数使用计时器继续执行并且正确处理异常。

或者

为计时器内的函数处理 http Web 请求和 Web 响应的最佳方法是什么?

4

2 回答 2

1

以通常的方式处理异常,然后呢?

try {
    // Send your request
} catch(WebException ex) {
    // It failed
}
于 2012-07-31T16:21:27.340 回答
0
while(response==null)
{

httpWebRequest = (HttpWebRequest)WebRequest.Create(sURL + param);
httpWebRequest.Method = WebRequestMethods.Http.Post;
httpWebRequest.Accept = "application/xml";
httpWebRequest.ContentLength = 0;

try
{
response = (HttpWebResponse)httpWebRequest.GetResponse();
if (response.StatusCode == HttpStatusCode.OK && response != null)
{
 streamReader = new StreamReader(response.GetResponseStream());
 doc = XDocument.Load(streamReader);
 break;
}
}
catch (WebException exx)
{
Console.WriteLine("Trying to reconnect with Web Server");
Thread.Sleep(2000);
}
}
于 2012-08-01T07:01:06.450 回答