博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
检测远程URL是否存在
阅读量:5944 次
发布时间:2019-06-19

本文共 1626 字,大约阅读时间需要 5 分钟。

本文用3种方法检测远程URL是否存在。

private void Page_Load(object sender, System.EventArgs e)

{

 string url1 = "http://dotnet.aspx.cc/";

 string url2 = "";
 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,");
 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;
 }
}

转载地址:http://ypwxx.baihongyu.com/

你可能感兴趣的文章
课本学习笔记5:第七章 20135115臧文君
查看>>
C# 导出word文档及批量导出word文档(2)
查看>>
最大子数组
查看>>
网站(陆续更新)
查看>>
17个提升iOS开发效率的神器
查看>>
android 3.0+百度地图api地图如何移动到指定的经纬度处
查看>>
点权生成树(gentree)
查看>>
[POJ 3270]Cow Sorting
查看>>
Mysql分析-profile详解
查看>>
WebServiceHost 在ConsoleApplication中使用时添加命名空间添加不上,报错
查看>>
《蚁贼》
查看>>
王工的权限理解
查看>>
最大的算式
查看>>
让PHP更快的提供文件下载 【转】
查看>>
Oauth2认证以及新浪微博开放平台应用
查看>>
BZOJ1861:[ZJOI2006]书架(Splay)
查看>>
BZOJ2301:[HAOI2011]Problem b(莫比乌斯反演,容斥)
查看>>
HIVE-ORC表一些知识点
查看>>
敏捷测试
查看>>
补3.31 部分成果以及上周的工作
查看>>