分别从客户端和服务端判断远程URL是否存在的方法
来源:互联网 发布:人工智能8个发展趋势 编辑:程序博客网 时间:2024/06/17 15:48
作用:可以判断远程url(如:http://www.eohosoft.com/)是否存在.
作用举例:服务器上某个服务每天生成一个Excel报表用当天日期来命名,如20060320.xsl,用户可以点击一个日历上的日期链接来打开此报表。问题是,当用户点击了一个文件不存在的链接,比如未来的某个日期,就会出现请求页面不存在的错误界面,这是极其不友好的,用户会认为是"灾难性故障"。这时我们就需要判断url是否存在,如不存在,以友好的方式报告错误。
解决方法:
我们可以分别从客户端和服务端来解决此问题。
服务端解决方法:
原理:HttpWebRequest发出对url的请求,HttpWebResponse接受请求,通过对请求状态的判断就知道url是否存在了。
Asp.net服务端实现程序:
using System;
using System.Net;
using System.Web;
class UrlValidation
{
public static bool UrlExists(string url)
{
try
{
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(url);
myRequest.Method = "HEAD";
myRequest.Timeout = 100;
HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
return (myResponse.StatusCode==HttpStatusCode.OK);
}
catch (WebException e)
{
Response.Write(e.Message);
return false;
}
}
}
客户端解决方法:
原理:通过对Msxml2.xmlhttp对象请求状态的判断来看url是否存在。
客户端实现程序:
<html>
<body>
<input id="demo" value="http://www.eohosoft.com/" size="30" />
<input type="button" onclick="UrlExists(demo.value)" value="check" />
<script language="javascript">
var xmlhttp=new ActiveXObject("Msxml2.xmlhttp");
function UrlExists(url)
{
xmlhttp.open("get",url,false);
xmlhttp.send();
alert(xmlhttp.status=="404" ? "不存在" : "存在");
}
</script>
</body>
</html>
- 分别从客户端和服务端判断远程URL是否存在的方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- 检测远程URL是否存在的三种方法
- C#服务端判断客户端socket是否已断开的方法
- C#判断网络地址 Url 是否存在的方法
- PHP判断远程文件是否存在的几种方法
- PHP判断远程文件是否存在的几种方法
- 判断URL是否存在
- 判断URL是否存在
- 如何得到上一次插入记录后自动产生的ID
- Servlet的初始化参数的配置和使用
- 让简历一发即中三大绝招
- 手机与笔记本上网的解决方案
- RedHat linux cvs服务器的配置
- 分别从客户端和服务端判断远程URL是否存在的方法
- 三层开发中的一个小问题
- How Eclipse Finds Your Classes at Runtime
- 实现软件的可用性
- 赶超世界水平,呵呵
- 十岁~~~三十岁男人......
- C#与数据库的一些效率测试
- 备份硬件驱动--驱动精灵的使用
- 李政道:只有重视基础研究,才能保持创新能力