一、什么是Ajax?

有跳转就是同步,无跳转就是异步

Asynchronous Javascript And XML(异步JavaScript和XML)

  • Ajax = 异步 JavaScript 和XML。
  • Ajax是一种用于创建快速动态网页的技术
  • 通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新
  • 传统的网页(不使用 Ajax)如果需要更新内容,必需重载整个网页面
  • Ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术

使用AJAX可以局部刷新(异步无刷新技术),提高用户体验(百度页面是整个刷新

XML已经完全被JSON替代,JSON是当前前后端数据交换的一种格式

二.AJAX的使用步骤

1.创建HTTP请求对象

var xhr = new XMLHttpRequest()

2.打开服务器的连接,设置要请求的接口

xhr.open(参数1, 参数2, 参数3)

参数1:接口的请求方式,格式为大写,例如: GET POST…

参数2:接口的地址

参数3:是否为异步 true->异步 false->同步 默认是异步

3.发送请求

xhr.send()

4.绑定事件,监听服务器端响应

xhr.onload = function(){

xhr.responseText 获取接口响应结果

}

用户登录——AJAX版用户
密码
// 给按钮绑定点击事件,点击后获取用户名和密码,然后向后端发请求(AJAX),传递用户名和密码btn.onclick=function(){// alert('点击了')// 获取用户输入的用户名和密码var a=user.valuevar b=pwd.valueconsole.log(a,b)// 向后端发请求的行为叫做AJAX// 1.创建HTTP请求对象var xhr=new XMLHttpRequest()// 2.打开服务器连接(请求接口)// 参数1:接口请求方式(标准写法是大写)// 参数2:接口地址// 参数3:是否为异步 true->异步 false->同步// get请求的参数要拼接到url后xhr.open('GET',`http://127.0.0.1:3000/login" />

三.AJAX传参

1.get传递

直接将参数拼接在URL中

http://127.0.0.1:3000/check?a=1&b=2

2.post传递

将参数放入到请求体中,还需要设置编码类型

设置编码类型

xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=utf-8')

将参数放入到请求体

xhr.send('a=1&b=2')

四.JSON

后端给前端返回(前端也可以给后端),接口返回结果

叫做JS对象表示法,使用JS对象的格式去描述一组数据,是前后端数据交换的一种格式

属性名必须使用双引号,属性值是字符串必须是双引号

JS和JSON之间可以相互转换

(1)将JS转为JSON(序列化)

JSON.stringify()

(2)将JSON转为JS(反序列化)

JSON.parse()