Ajax json 数据格式

json 是一种与语言无关的数据交换的模式。只是一种数据格式:

ajax :
是么是同步 什么事异步
同步现象:客户端发送请求到服务端,当服务端返回响应之前,客户端都处于等待卡死状态。
异步现象:客户端发送请求到服务器端,无论服务器是否返回,客户端都可以随意做其他的时候,不会卡死。



二原声js的 ajax 技术这只是作为了解。
(感觉,我要是会了很多技术,或者说技术练熟练了,我感觉写着还是 很带劲的,可以写的很开心,很嗨的,特别是做项目的时候,就是因为自己现在很多知识不熟练,不清楚。很多的代码要敲是十遍,在脑海中有印象,当然就可以写的很好了)

function fn1() {
    alert(11);
    //1创建  ajax q引擎对象 ----所有的操作 都是通过引擎对象
    var xmlHttp = new XMLHttpRequest();
    //2 ,绑定监听---监听服务器是否已经返回相应的数据
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
            //5 接受相应的数据
            var res = xmlHttp.responseText;
            alert(res);
        }
    }
    //3、绑定地址
    xmlHttp.open("get", "/ajax/AjaxServlet", true);
    //4发送请求

//if是post请求的话:要在send 发送之前写
 xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    xmlHttp.send();
}
步骤来:1/第一步创建引擎 2/第二步绑定监听  3/第三步绑定地址 4 /发送请求  ,5 /接受相应的数据,这一步放在第2步的里面。

三 很重要的JSON的数据格式:
1/对象格式:
{"key1":obj,"key2":obj,"key":obj}
    //这个里面的obj如果是字符串,那么就要加引号,如果不是就直接写
    
2/数组:集合格式:
var json = {
            "key1":"value1",
            "key2":{"firstname":"张","lastname":"三丰","age":100},
            "key3":[
                      {"name":"小双","age":28,"addr":"扬州"},
                      {"name":"建宁","age":18,"addr":"紫禁城"},
                      {"name":"阿珂","age":10,"addr":"山西"},
                  ]
    };
    alert(json.key2.lastname);
    alert(json.key3[2].name);
其实每一步只需要一步步点出来就可以了。
//java代码只能返回一个json格式的字符串
        response.setContentType("text/html;charset=UTF-8");
        response.getWriter().write("{\"name\":\"汤姆\",\"age\":21}");
当是post请求的时候,是不需要去管字符集的,因为这里ajax a已经帮你调用过。parseJSONY已经处理过字符集了。其他的就跟平时一样处理字符集就可以了。


jQuery的ajax技术:重点:
记住要使用:jquery 最重要的前提就是要导包 jquery的包

get 方法 和post 方法  
但是最重要的还是ajax最原始的方法
function fn1(){
        //get异步访问
        $.get(
            "/WEB22/ajaxServlet2", //url地址
            {"name":"张三","age":25}, //请求参数
            function(data){ //执行成功后的回调函数
                //{\"name\":\"tom\",\"age\":21}
                alert(data.name);
            },
            "json"
        );
    }
    function fn2(){
        //post异步访问
        $.post(
            "/WEB22/ajaxServlet2", //url地址
            {"name":"李四","age":25}, //请求参数
            function(data){ //执行成功后的回调函数
                alert(data.name);
            },
            "json"
        );
    }
    function fn3(){
        $.ajax({
            url:"/WEB22/ajaxServlet2",
            async:true,
            type:"POST",
            data:{"name":"lucy","age":18},
            success:function(data){
                alert(data.name);
            },
            error:function(){
                alert("请求失败");
            },
            dataType:"json"
        });
    

async :是否异步,默认是TRUE代表异步。
data :发送到服务器的参数,建议使用json的格式
dateType :服务器端返回的数据类型,常用的text和json 一般都是json
success :成功响应执行的函数,对应的类型是function类型
type:请求方式 ,post /get
url :请求的服务器端地址

今天算是复习了,不得不说效率还是 太慢了一点。这个 不能这个样子了。
贴吧的代码,支付宝的代码, struts2 的 filter 明天面试,改背的一定要好好去背



   




转载于:https://www.cnblogs.com/AnTank/p/7679757.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值