认识AJAX

一、什么是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 获取接口响应结果 } |

html 复制代码
<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>用户登录------AJAX版</title>

</head>

<body>

用户<input type="text" id="user"><br>

密码<input type="text" id="pwd"><br>

<button id="btn">登录</button>

<script>

// 给按钮绑定点击事件,点击后获取用户名和密码,然后向后端发请求(AJAX),传递用户名和密码

btn.onclick=function(){

// alert('点击了')

// 获取用户输入的用户名和密码

var a=user.value

var b=pwd.value

console.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?user=${a}&pwd=${b}`,true)

// 3.发送请求

xhr.send()

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

// 只要有响应就自动调取

xhr.onload=function(){

// 获取响应结果,响应结果都在响应体里面

console.log(xhr.responseText)

}

}

</script>

</body>

</html>

三.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()

相关推荐
killerbasd1 小时前
牧苏苏传 我不装了 4/7
前端·javascript·vue.js
吴声子夜歌1 小时前
ES6——二进制数组详解
前端·ecmascript·es6
码事漫谈2 小时前
手把手带你部署本地模型,让你Token自由(小白专属)
前端·后端
ZC跨境爬虫2 小时前
【爬虫实战对比】Requests vs Scrapy 笔趣阁小说爬虫,从单线程到高效并发的全方位升级
前端·爬虫·scrapy·html
爱上好庆祝2 小时前
svg图片
前端·css·学习·html·css3
橘子编程2 小时前
JavaScript与TypeScript终极指南
javascript·ubuntu·typescript
王夏奇2 小时前
python中的__all__ 具体用法
java·前端·python
叫我一声阿雷吧3 小时前
JS 入门通关手册(45):浏览器渲染原理与重绘重排(性能优化核心,面试必考
javascript·前端面试·前端性能优化·浏览器渲染·浏览器渲染原理,重排重绘·reflow·repaint
大家的林语冰3 小时前
《前端周刊》尤大开源 Vite+ 全家桶,前端工业革命启动;尤大爆料 Void 云服务新产品,Vite 进军全栈开发;ECMA 源码映射规范......
前端·javascript·vue.js
jiayong233 小时前
第 8 课:开始引入组合式函数
前端·javascript·学习