我有一个多线程应用程序(在 c# 中),它对GET
uri 执行多个 HTTP。在数千个请求之后突然出现超时 webException 但如果我使用浏览器进行测试,目标服务器就可以了。代码是:
public static string Get(string uri)
{
string responseData = string.Empty;
using (WebClient wc = new WebClient())
{
responseData = wc.DownloadString(uri);
}
return responseData;
}
我认为这是处理连接问题或类似错误。任何身体都有同样的问题?
提前谢谢,
PS我也用过HttpWebResponse
。但我得到同样的错误。
PS 操作系统是 Windows 2003 服务器。所以我认为不是连接限制。
我也尝试过这段代码,我得到了同样的错误
public static string Get2(string uri)
{
string responseData = string.Empty;
WebRequest request = WebRequest.Create(uri) as HttpWebRequest;
request.Method = "GET";
request.Timeout = 35000;
using(HttpWebResponse response = (HttpWebResponse)request.GetResponse() as HttpWebResponse)
{
using(Stream dataStream = response.GetResponseStream ())
{
using(StreamReader reader = new StreamReader (dataStream))
{
responseData = reader.ReadToEnd();
}
}
}
return responseData;
}