asp.net下檢測遠程URL是否存在的三種方法
更新時間:2009年12月13日 02:33:58 作者:
檢測遠程URL是否存在的三種方法,需要的朋友可以參考下。
復(fù)制代碼 代碼如下:
private void Page_Load(object sender, System.EventArgs e)
{
string url1 = "http://s.jb51.net/";
string url2 = "http://www.dbjr.com.cn/images/logo.gif";
Response.Write("<li>方法1:");
Response.Write(url1 + " 存在:" + UrlExistsUsingHttpWebRequest(url1).ToString());
Response.Write("<li>方法2:");
Response.Write(url1 + " 存在:" + UrlExistsUsingSockets(url1).ToString());
Response.Write("<li>方法3:");
Response.Write(url1 + " 存在:" + UrlExistsUsingXmlHttp(url1).ToString());
Response.Write("<li>方法1:");
Response.Write(url2 + " 存在:" + UrlExistsUsingHttpWebRequest(url2).ToString());
Response.Write("<li>方法3:");
Response.Write(url2 + " 存在:" + UrlExistsUsingXmlHttp(url2).ToString());
}
private bool UrlExistsUsingHttpWebRequest(string url){
try
{
System.Net.HttpWebRequest myRequest = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
myRequest.Method = "HEAD";
myRequest.Timeout = 100;
System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)myRequest.GetResponse();
return (res.StatusCode == System.Net.HttpStatusCode.OK);
}
catch (System.Net.WebException we)
{
System.Diagnostics.Trace.Write(we.Message);
return false;
}
}
private bool UrlExistsUsingXmlHttp(string url)
{
//注意:此方法需要引用Msxml2.dll
MSXML2.XMLHTTP _xmlhttp = new MSXML2.XMLHTTPClass();
_xmlhttp.open("HEAD", url, false, null, null);
_xmlhttp.send("");
return (_xmlhttp.status == 200);
}
private bool UrlExistsUsingSockets(string url)
{
if (url.StartsWith("http://")) url = url.Remove(0, "http://".Length);
try
{
System.Net.IPHostEntry ipHost = System.Net.Dns.Resolve(url);
return true;
}
catch (System.Net.Sockets.SocketException se)
{
System.Diagnostics.Trace.Write(se.Message);
return false;
}
}
您可能感興趣的文章:
- asp.net下通過泛解析和偽靜態(tài)實現(xiàn)二級域名的實現(xiàn)方法
- asp.net獲取當(dāng)前網(wǎng)址url的各種屬性(文件名、參數(shù)、域名 等)的代碼
- asp.net用url重寫URLReWriter實現(xiàn)任意二級域名 高級篇
- asp.net用url重寫URLReWriter實現(xiàn)任意二級域名 新
- asp.net 通過指定IP地址得到當(dāng)前的網(wǎng)絡(luò)上的主機的域名
- asp.net用url重寫URLReWriter實現(xiàn)任意二級域名
- asp.net下用url重寫URLReWriter實現(xiàn)任意二級域名的方法
- 在ASP.NET里得到網(wǎng)站的域名
- asp.net實現(xiàn)中英文多域名檢測的方法
相關(guān)文章
ASP.NET性能優(yōu)化之讓瀏覽器緩存動態(tài)網(wǎng)頁的方法
上一篇《ASP.NET性能優(yōu)化之構(gòu)建自定義文件緩存》我們通過OutputCache,讓請求去訪問服務(wù)器asp.net的輸出緩存,我們擴展了OutputCacheProvider,這相當(dāng)于是訪問服務(wù)器上的靜態(tài)資源。2011-09-09先裝了FRAMEWORK,后裝IIS導(dǎo)致asp.net頁面無法訪問的解決方法
如果先裝了FRAMEWORK,后裝IIS。有可能沒有在IIS中注冊,就會導(dǎo)致在頁面中無法訪問的情況2012-01-01NET Core TagHelper實現(xiàn)分頁標(biāo)簽
這篇文章主要介紹了NET Core TagHelper實現(xiàn)分頁標(biāo)簽,講述實現(xiàn)一個簡單分頁和總要注意步奏,感興趣的小伙伴們可以參考一下2016-07-07Asp.net中安全退出時清空Session或Cookie的實例代碼
網(wǎng)站中點擊退出,如果僅僅是重定向到登錄/出頁面,此時在瀏覽器地址欄中輸入登錄后的某個頁面地址如主頁,你會發(fā)現(xiàn)不用登錄就能訪問,這種退出并不安全了,下面通過本文給大家介紹安全退出時清空Session或Cookie的實例代碼2016-11-11