這篇文章主要介紹了asp.net C#檢查URL是否有效的方法,需要的朋友可以參考下
我們有時候需要對用戶輸入的網站(URL)進行有效性檢查, 代碼如下: function CheckUrl(str) { var RegUrl = new RegExp(); RegUrl.compile("^[A-Za-z]+://[A-Za-z0-9-_]+.[A-Za-z0-9-_%&?/.=]+$"); if (!RegUrl.test(str)) { return false; } return true; } 不止從格式上,更要檢查用戶輸入的網址是否真正有效。檢查URL可以參考js正則表達式驗證網址格式,檢查URL有效的方法有很多,例如你可以使用jQuery進行檢查, 本篇將給出一段使用C#判斷網址是否有效的代碼。 下邊是檢查URL有效性的方法: 代碼如下: private bool UrlCheck(string strUrl) { if (!strUrl.Contains("http://") && !strUrl.Contains("https://")) { strUrl = "http://" + strUrl; } try { HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(strUrl); myRequest.Method = "HEAD"; myRequest.Timeout = 10000; //超時時間10秒 HttpWebResponse res = (HttpWebResponse)myRequest.GetResponse(); return (res.StatusCode == HttpStatusCode.OK); } catch { return false; } } 使用時,我們只需傳入Url即可進行有效性檢查,使用這個方法時記得加上System.Net命名空間。 代碼如下: if (!UrlCheck("http://www.jb51.net")) { //刪除操作 } 是的,在本站中用戶可以輸入自己的網址,但有的用戶不知道是為了測試還是什麼,輸入了一眼就能看出是訪問不了的鏈接。所以有必要對用戶輸入的網址做個檢查,不然無效鏈接太多的話會影響網站的權重,更重要的是過多的無效鏈接會影響其他用戶的體驗,因為誰也不想點擊一個無效的鏈接。 可以參考jQuery Ajax, 以下5個方法執行一般Ajax請求的簡短形式,在處理復雜的Ajax請求時應該使用jQuery.ajax(). 1.load(url,[data],[callback]) 載入遠程HTML文件代碼並插入至DOM中,默認使用GET方式,傳遞參數時自動轉換為POST方式。 ◦url:要載入的遠程url地址 ◦data:發送至服務器的key/value 數據 ◦callback:載入成功時的回調函數 示例代碼如下: 代碼如下: //無參數、無回調函數 $("#showload").load("load.htm"); //無回調函數 $("#showload").load("load.htm", { "para": "para-value" }); $("#showload").load("load.htm", { "para": "para-value" }, function() { //處理 })