【转】C#中判断网址是否有效

本文内容来源网络,如涉及版权,请联系做者删除。网络

思路:C#语言判断网址是否正确,思路是向网址发起链接,根据状态判断网址是否有效。多线程

代码以下:

//仅检测连接头,不会获取连接的结果。因此速度很快,超时的时间单位为毫秒
public static string GetWebStatusCode(string url,int timeout) {
        HttpWebRequest req = null;
        try
        {
            req = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
            req.Method = "HEAD";  //这是关键        
            req.Timeout = timeout;
            HttpWebResponse res = (HttpWebResponse)req.GetResponse();
            return Convert.ToInt32(res.StatusCode).ToString();
        }
        catch (Exception ex)
        {
            return ex.Message;
        }
        finally {
            if (req != null)
            {
                req.Abort();
                req = null;
            }
        }

}
     
//须要注意的是若是你使用多线程。。C#默认同时只有4个网络线程,如须要破解此限制须要添加代码
ServicePointManager.DefaultConnectionLimit = 100;
     
//此方法返回一个状态码。。状态码为200是为正常,异常时会返回错误信息。好比超时
相关文章
相关标签/搜索