欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2024-02-24 14:43:04
我们有时候需要对用户输入的网站(url)进行有效性检查, 复制代码 代码如下:function checkurl(str) {    var...

我们有时候需要对用户输入的网站(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("//www.jb51.net"))
{
    //删除操作
}

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

可以参考jquery  ajax,


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

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

载入远程html文件代码并插入至dom中,默认使用get方式,传递参数时自动转换为post方式。

◦url:要载入的远程url地址
◦data:发送至服务器的key/value 数据
◦callback:载入成功时的回调函数

示例代码如下:

复制代码 代码如下:

//无参数、无回调函数
$("#showload").load("load.htm");
//无回调函数
$("#showload").load("load.htm", { "para": "para-value" });
$("#showload").load("load.htm", { "para": "para-value" },
    function() {
        //处理
    })