我正在检查服务器是否可以访问,然后将图片框的"可见"布尔值设置为 true。但是,当我第一次运行代码时,没有出现任何错误,但也没有出现图片框。
有一个离线 Pic(将可见布尔值设置为 true,并在测试失败时置于最前面)有一个在线 Pic(将可见布尔值设置为 true,并在测试通过时置于前面)
我认为有可能是服务器搞砸了,所以我将其更改为尝试使用 Google.com,没有区别。
private void Launcher_Load(object sender, EventArgs e)
{
TestServerConnection();
}
public void TestServerConnection()
{
string url = "www.google.com";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = 15000;
request.Method = "HEAD";
try
{
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
if (onlinePic.Visible == false) onlinePic.Visible = true;
onlinePic.BringToFront();
}
}
catch (WebException)
{
if (offlinePic.Visible == false) offlinePic.Visible = true;
offlinePic.BringToFront();
}
}
网址的格式错误。
www.google.com 应该 http://www.google.com
其他一切都对我来说很好。
并非所有
服务器都可以响应HEAD
尝试在request.Method
中使用GET
。并在 URL 中指定协议http
。