aspnet可以做前端吗 asp.net用三种方法检测远程URL存在与否
asp.net用三种方法检测远程URL存在与否
用 种方法检测远程URL是否存在
private void Page_Load(object sender System EventArgs e)
{
string url = / ;
string url = ;
Response Write( <li>方法 );
Response Write(url + 存在 + UrlExistsUsingHttpWebRequest(url ) ToString());
Response Write( <li>方法 );
Response Write(url + 存在 + UrlExistsUsingSockets(url ) ToString());
Response Write( <li>方法 );
Response Write(url + 存在 + UrlExistsUsingXmlHttp(url ) ToString());
Response Write( <li>方法 );
Response Write(url + 存在 + UrlExistsUsingHttpWebRequest(url ) ToString());
Response Write( <li>方法 );
Response Write(url + 存在 + UrlExistsUsingXmlHttp(url ) ToString());
}
private bool UrlExistsUsingHttpWebRequest(string url){
try
{
System Net HttpWebRequest myRequest = (System Net HttpWebRequest)System Net WebRequest Create(url);
myRequest Method = HEAD ;
myRequest Timeout = ;
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)
{
//注意 此方法需要引用Msxml dll
MSXML XMLHTTP _xml();
_xml open( HEAD url false null null);
_xml send( );
return (_xml status == );
}
private bool UrlExistsUsingSockets(string url)
{
if (url StartsWith(// )) url = url Remove( // 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;
}
lishixinzhi/Article/program/ASP/201311/21653