Axios,vue官方推荐的Ajax插件。
安装
1 |
//使用npm下载 |
配置
导入
在main.js中进行配置。
1 |
//导入 |
使用import axios from 'axios';
,导入axios。from后边的名为axios,以package.json文件中的为准。
拦截器
请求拦截器、响应拦截器,在Ajax发送之前与接收到响应之后进行一些处理,可使用拦截器。使用方法,见下边的案例。
发起Ajax请求
注意,get、delete请求使用params设置参数。post、put、patch请求使用data设置参数。
1 |
//在vue文件中使用: |
更多笔记,见菜鸟教程。
案例
某项目中axios的配置如下(main.js文件):
- 设置全局URL。
- 使用请求拦截器,将登录成功后获得的token添加到HTTP请求的header中的Authorization字段(自定义的字段)。
- 使用请求拦截器,启用进度条插件。
- 使用响应拦截器,关闭进度条插件。
- 使用响应拦截器,检查token是否已失效(根据后台返回的,位于header中的code字段。自定义的字段)。
- 将axios挂载到VUE原形上,后续通过$http调用axios发起Ajax请求。
- 注意:要使用elementui的弹窗组件(响应拦截器中有使用到),需要保证下边的配置在elementui的import之后。
1 |
|
扩展
给NProgress动画增加条件判断,控制是否显示。
1 |
//拦截器中添加如下判断,默认在发起请求时显示进度条 |