如何使用这个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);

})

相关推荐
我胡为喜呀10 分钟前
Vue3 中的 watch 和 watchEffect:如何优雅地监听数据变化
前端·javascript·vue.js
Jeled1 小时前
Android 网络层最佳实践:Retrofit + OkHttp 封装与实战
android·okhttp·kotlin·android studio·retrofit
liangshanbo12152 小时前
React 19 vs React 18全面对比
前端·javascript·react.js
Never_Satisfied3 小时前
在 JavaScript 中,删除数组中内容为xxx的元素
java·前端·javascript
_菜鸟果果3 小时前
Vue3+echarts 3d饼图
前端·javascript·echarts
rechol3 小时前
类与对象(中)笔记整理
java·javascript·笔记
Luffe船长4 小时前
前端vue2+js+springboot实现excle导入优化
前端·javascript·spring boot
仲夏幻境4 小时前
js利用ajax同步调用如何
开发语言·javascript·ajax
鹿鹿鹿鹿isNotDefined4 小时前
Pixelium Design:Vue3 的像素风 UI 组件库
前端·javascript·vue.js
运维行者4 小时前
知乎崩了?立即把网站监控起来!
前端·javascript·后端