ajax和url

以前在一些网站自学ajax时的时候,总是不明白,凭什么我ajax请求后,就能收到消息?在没有ajax之前,页面的刷新都是全部更新的,而有了ajax后,我们可以做到局部更新而不必页面的重新请求,这种轻量级的更新方式带来的好处是显而易见的:对网页浏览者来讲快捷方便,节约时间;对开发者来讲,维护起来更轻松,不必牵一发而动全身的针对整个页面;对服务器来讲,ajax请求的带来的压力会远远小于整个页面刷新给服务器的负荷。好了,那么ajax到底是怎么请求的,类似与w3c和菜鸟等自学网站都没有真正的实力,只是展示可以ajax请求,后台代码没有,给初学者带来了很大的困难。

以一个用asp.net页面为例:

public static string SayHello()   
{   
     return "Hello Ajax!";   
}
$(function() {   
    $("#btnOK").click(function() {   
        $.ajax({   
            //要用post方式   
            type: "Post",   
            //方法所在页面和方法名   
            url: "data.aspx/SayHello",   
            contentType: "application/json; charset=utf-8",   
            dataType: "json",   
            success: function(data) {   
                //返回的数据用data.d获取内容   
                alert(data.d);   
            },   
            error: function(err) {   
                alert(err);   
            }   
        });   
 
        //禁用按钮的提交   
        return false;   
    });   
});

这样子我们可以很清楚的看到ajax的流程:点击(click)事件触发了JavaScript,然后启用ajax,ajax根据URL去找后台的处理的方法,也就是sayhello(),把sayhello()方法的执行结果返回到页面。这个请求方式是不是和整个页面刷新同根同源呢?只要理解了其中一个,另一个就很好理解。

再说说URL吧,统一资源定位符,在学计算机网络的时候不能理解,现在就醍醐灌顶了:所有的资源在服务器里面,你看到的网页给你很多个选择,你根据自己的需求选择好了,提交,然后就可以到服务器里面找了。比如说服务器有语,数,外三个资源,在页面上就有语,数,外三个资源对应的请求路径,你点击语文的下载肯定会下载到语文的资源,不会是其他的(下载在就是一个简单select SQL语句)。

那么,很多网站在注册时不允许用户名重复,那么ajax请求在后台的执行代码(抛开编程语言,仅说SQL语句)是什么样子的呢?不会的自己想想咯,很简单的。

猜你喜欢

转载自blog.csdn.net/qq_39767955/article/details/80014642