如何在c#中发送HttpWebRequest并接收检查internet的应答?
我正在尝试使用httpwebrequest制作一个应用程序来检查互联网连接(以及一个特殊站点的完整性)。我在研究后发现了这段代码,但无法完成,不知道它是否正确:如何在c#中发送HttpWebRequest并接收检查internet的应答?,c#,httpwebrequest,httpresponse,C#,Httpwebrequest,Httpresponse,我正在尝试使用httpwebrequest制作一个应用程序来检查互联网连接(以及一个特殊站点的完整性)。我在研究后发现了这段代码,但无法完成,不知道它是否正确: WebRequest myRequest = WebRequest.Create("http://www.bing.com"); myRequest.Timeout = 5000; WebResponse response = myRequest.GetResponse();
WebRequest myRequest = WebRequest.Create("http://www.bing.com");
myRequest.Timeout = 5000;
WebResponse response = myRequest.GetResponse();
if(response == ???)
{
response.Close();
return true;
}
else{
response.Close();
return false;
}
我应该添加什么?看看:
[已编辑]
确定您可以将响应转换为HttpWebResponse并询问如下状态码:
if ( ((HttpWebResponse)response).StatusCode == HttpStatusCode.OK )
{
response.Close();
return true;
}
else
{
response.Close();
return false;
}
试着这样做:
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://www.bing.com");
myRequest.Timeout = 5000;
HttpWebResponse response = (HttpWebResponse)myRequest.GetResponse();
if(response.StatusCode == HttpStatusCode.OK)
{
response.Close();
return true;
}
else{
response.Close();
return false;
}
如果您的ISP没有阻止ping通信,您也可以使用.net
我见过这个医生,但不知道该用什么来代替???在我的代码中。看看我的代码中的第四行StatusCode不存在!
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://www.bing.com");
myRequest.Timeout = 5000;
HttpWebResponse response = (HttpWebResponse)myRequest.GetResponse();
if(response.StatusCode == HttpStatusCode.OK)
{
response.Close();
return true;
}
else{
response.Close();
return false;
}
public static bool IsConnectedToInternet()
{
string host = "www.google.com";
bool result = false;
Ping p = new Ping();
try
{
PingReply reply = p.Send(host, 5000);
if (reply.Status == IPStatus.Success)
return true;
}
catch { }
return result;
}