AJAX局部刷新数据

AJAX

1 .ajax的作用
js基础学习结束之后,我们肯定避不开的就是前后端交互,而AJAX就是js和服务器交互的手段。Ajax就是在浏览器不重新加载网页的情况下,对页面的某部分进行更新
2 .ajax简介
ajax (async javascript and XML(异步JavaScript和XML)),是前后太交互的能力,也就是我们给服务器发送消息以及接受响应的工具

ajax并不是新的编程语言,而是使用现有的一种方法

ajax在使用的时候不需要任何插件,我们可以直接使用原生js就可以,jQuery也提供的简单请求操作

同步和异步

在请求数据阶段,我们就要有同步请求和异步请求的概念

同步请求

同步请求是指当前发出请求后,浏览器什么都不能做,
必须得等到请求完成返回数据之后,才会执行后续的代码,
相当于生活中的排队,必须等待前一个人完成自己的事物,后一个人才能接着办。
也就是说,当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面处于一个假死状态,
当这个AJAX执行完毕后才会继续运行其他代码页面解除假死状态
简单来说就是 上一个任务结束之后下一个任务开始,比如我们常见的alert弹窗

异步请求

默认异步:异步请求就当发出请求的同时,浏览器可以继续做任何事,
Ajax发送请求并不会影响页面的加载与用户的操作,相当于是在两条线上,各走各的,互不影响。
一般默认值为true,异步。异步请求可以完全不影响用户的体验效果,
无论请求的时间长或者短,用户都在专心的操作页面的其他内容,并不会有等待的感觉。
简单来说就是 多个任务按顺序开始执行,但是不一定按照顺序结束

AJAX 的使用

  1. 原生js
    创建:var xhr = new XMLHttpRequest()
    配置:xhr.open(请求方式,请求地址,是否异步)
    请求方式:‘get’,‘post’
    两者的区别:
    1 语义化的区别:get偏向于获取,post偏向于提交数据
    2 携带给后端的信息位置不一样
    get直接在地址后面拼接查询字符串
    post在请求体内进行信息的查询
    3 携带的数据格式不一样
    get:因为携带的数据是直接拼接在地址后面,只能使用url编码
    post:因为在请求体内,所以可有多种形式,但是需要提前说明
    4 携带的数据大小不一样
    get:因为拼接在地址后面,大小在2kb左右
    post:因为在请求体内,数据大小不受限制,除非服务器有显示
    5 安全性能
    get:明文发送,不安全
    post:相对安全
    6 浏览器缓存
    get: 浏览器会主动缓存
    post:浏览器不会主动缓存

    请求地址:URL
    这个URL是我们请求数据的地址。
    是否异步:false true
    默认值为 false 同步
    true 异步

  2. 响应
    xhr.onreadystatechange = function(){
    (xhr.readyState === 4)//这个值必须等于4的时候才可以完成响应
    xhr.responseText//这里可以拿到数据
    }

  3. 发送
    xhr.send()

jQuery 方法请求(我们可以使用jQuery提供的一系列方法来完成数据请求)

  1. $.ajax({
    type: ‘get’/‘post’,
    url:’ ',
    success:function(res){
    cb(res)//请求成功之后执行一个回调参数,在之后使用
    }
    error:function(res){
    cb(res)//请求失败之后执行一个回调函数
    }
    })

版权声明:本文为m0_46335802原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。