如何使用这个XMLHttpRequest?

ajax含义:async javascript and XML;是异步的JS和XML;是实现页面局部刷新的技术(是一门独立的技术)。

为什么在js内能够使用呢?是因为ajax在浏览器内内置了一个核心对象,--》XMLHttpRequest(低版本的IE浏览器没有)

步骤(背用):

1.实例化核心对象

let xhrs = new XMLHttpRequest(); //对核心对象进行实例化

//2.建立链接

//有5个参数--》ajax是异步的,

xhrs.open(请求方式,请求链接地址,同步/异步,用户名,密码)

3.发送请求

xhrs.send(请求参数),

4.获取ajax返回的数据--监听

xhrs.onreadystatechange = function() {

// 状态值=4表示成功

// console.log('改变', xhrs.readyState);

if (xhr.readystate == 4 && xhr.status == 200) {

//JSON.parse是字符串转为对象或数组的其他形式。 JSON.stringIfy是其他形式 去转换为字符串

console.log(JSON.parse(xhr.response).message);

}

}

axios 封装实例: axios fetch 基于ajax和promise进行的封装

function axios(params) {

//和上面

return new Promise((resolve, reject) => {

let xhrs = new XMLHttpRequest(); //对核心对象进行实例化

// 2.建立链接

// 有5个参数

xhrs.open(params, methods, params, url)

//3.发送请求

xhrs.send(params, data)

xhrs.onreadystatechange = function() {

// 状态值=4表示成功 // console.log('改变', xhrs.readyState);

if (xhr.readystate == 4 && xhr.status == 200) {

// JSON.parse是 console.log(JSON.parse(xhr.response).message);

resolve(JSON.parse(xhr.response))

}

}

})

}

//调用axios方法:

axios({

methods: 'get',

url: 'http://localhost:3000/api/get',

}).then(res => {

console.log(res);

})

相关推荐
weedsfly3 小时前
还在用 Axios?你可能需要重新理解 XHR 与 Fetch
前端·javascript·面试
CoderWeen3 小时前
从零实现一个 Vue3 流程图编辑器:节点拖拽、贝塞尔连线与框选
前端·javascript
To_OC13 小时前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
kyriewen17 小时前
我用 50 行代码重写了 React Router 核心,终于搞懂了前端路由原理
前端·javascript·react.js
Asize20 小时前
HTML5 Canvas 基础:从按帧动画到 ECharts 数据可视化
前端·javascript·canvas
默_笙20 小时前
🎄 后端给我一堆扁平数据,我 10 行代码把它变成了树
前端·javascript
前端Hardy20 小时前
又一个 AI 神器火了!
前端·javascript·后端
PBitW20 小时前
GPT训练我的第二天,我表示不过如此!!!😕😕😕
前端·javascript·面试
kyriewen21 小时前
白宫直接给 OpenAI 下了限制令,GPT-5.6 不能随便放出来了
前端·javascript·面试
默_笙1 天前
🍞 我用 CSS 画了一个会转的 3D 立方体,同事以为我学了 Three.js(这节课真的很神奇,我很喜欢)
javascript