赞
踩
什么是 Axios
Axios 是一个基于 Promise 语法的、用于浏览器和 Node.js 的 HTTP 库。简单的理解就是对 Ajax 的封装,且具有易用、简洁、高效等特点。
Axios 的特点
它本身具备以下作用:
Axios 的安装与其他框架或插件类似,也是分为以下两种:
npm install axios
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
Axios 基本用法
使用以下命令获取 axios 文件:
wget https://labfile.oss.aliyuncs.com/courses/10532/axios.min.js
首先,打开我们的线上环境,创建一个名为 demo1.html 的文件,并引入 axios.js。代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<!-- 引入 Axios 的 CDN -->
<script src="axios.min.js"></script>
</head>
<body></body>
</html>
然后,创建一个名为 test.json 的文件,作为接下来使用 Axios 请求的数据文件,并写入以下数据:
{
"msg": "Hello Axios!"
}
最后,在 demo1.html 中使用 Axios 发送一个简单的 Ajax 请求,用于获取 test.json 中的数据,并输出在控制台:
<script type="text/javascript">
axios.get("./test.json").then((res) => {
console.log(res);
});
</script>
我们会发现,通过 Axios 获取到的数据实际上就是一个 Ajax 对象,真正需要我们请求的数据是该 Ajax 对象的 data 属性值。
上面这个例子只是 Axios 众多使用方式中的一种,它主要是用于执行 get 请求。
下面我们看几个它比较常用的使用方式。
axios.get('url',{
params:{
id:'接口配置参数(相当于url?id=xxxx)',
},
}).then(function(res){
console.log(res); // 处理成功的函数 相当于 success
}).catch(function(error){
console.log(error) // 错误处理 相当于 error
})
axios
.post(
"url",
{ data: {} },
{
headers: "xxxx", // 头部配置
}
)
.then(function (res) {
console.log(res); // 处理成功的函数 相当于 success
})
.catch(function (error) {
console.log(error); // 错误处理 相当于 error
});
//-------------------get-----------------------// axios({ method: "get", url: "xxx", cache: false, params: { id: 123, }, headers: "xxx", }); //-------------------post-----------------------// axios({ method: "post", url: "xxx", data: { firstName: "Tom", lastName: "Sun", }, });
其中需要注意的是,get 和 post 请求中向后端传递参数的配置项名字不同:get 请求的需要使用 params,post 请求用于发送数据的为 data。
关于 Axios 的基本使用方式就为大家演示到这里,作为一个独立的强大的 HTTP 库,它的功能远不止这些,大家可以通过 Axios 的官网学习。后续的实验中,我们也会结合实际案例,为大家展示它的更多功能,这里就不再一一展开讲解。
接下来,让我们一起看看它是如何与 Vue 的钩子函数结合使用的。
假设有这样一个需求:”当页面加载后我们就要展示一组数据到页面中“。
这个需求对于我们前端开发者来说稀松平常,因为对于大部分网页,我们需要保证的第一个需求基本上就是——这个页面加载后有数据展示。
那么,如果当前页面在使用 Vue 框架之后应该如何实现呢?声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/873306
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。