asp.net C#检查URL是否有效的方法

  次阅读 作者:智能小宝 来源:互联网 2016-01-26 10:48 我要评论(0)

这篇文章主要介绍了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"))

{

//删除操作

}

是的,在本站中用户可以输入自己的网址,但有的用户不知道是为了测试还是什么,输入了一眼就能看出是访问不了的链接。所以有必要对用户输入的网址做个检查,不然无效链接太多的话会影响网站的权重,更重要的是过多的无效链接会影响其他用户的体验,因为谁也不想点击一个无效的链接。

可以参考jQueryAjax,

以下5个方法执行一般Ajax请求的简短形式,在处理复杂的Ajax请求时应该使用jQuery.ajax().

1.load(url,[data],[callback])

载入远程HTML文件代码并插入至DOM中,默认使用GET方式,传递参数时自动转换为POST方式。

甥爀氀:要载入的远程url地址

搥愀琀愀:发送至服务器的key/value 数据

挥愀氀氀戀愀挀欀:载入成功时的回调函数

示例代码如下:

代码如下:

//无参数、无回调函数

$("#showload").load("load.htm");

//无回调函数

$("#showload").load("load.htm", { "para": "para-value" });

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...