用c#检查网站是否活跃?

问题描述 投票:0回答:4

我是 C# 新手,我想在 Visual Studio 中创建一个工具来检查网站是否存在。我发现我必须发出 head 请求并检查是否收到 200 响应。我在谷歌和这里搜索,但找不到合适的解决方案。我尝试过的东西没有用。任何帮助将非常感激。谢谢?

c# web-applications web
4个回答
4
投票

试试这个:

WebRequest request = WebRequest.Create("Site goes here");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

if (response == null || response.StatusCode != HttpStatusCode.OK)
{
    //Site is down
}
else
{
    //Site is up
}

1
投票

如果您只想检查网络服务器是否响应,请查看此链接,其中显示了如何 ping 另一台计算机,否则请使用此链接获取有关检索网页的信息


0
投票
bool IsWebsiteUp(Uri uri)
{
    try
    {
        var request = System.Net.WebRequest.Create(uri);
        request.Method = "HEAD";
        var response = (HttpWebResponse)request.GetResponse();
        return response.StatusCode == HttpStatusCode.OK;
    }
    catch
    {
        return false;
    }
}

0
投票
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response == null || response.StatusCode != HttpStatusCode.OK)

HttpClient 可能是现在更常见的方法。

HttpClient client = new HttpClient();
var checkingResponse = await client.GetAsync(url);
if (!checkingResponse.IsSuccessStatusCode)
{
   return false;
}
© www.soinside.com 2019 - 2024. All rights reserved.