【轉】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是爲正常,異常時會返回錯誤信息。好比超時
相關文章
相關標籤/搜索