vue项目中axios使用详解


Posted in Javascript onFebruary 07, 2018

axios在项目中(vue)的使用

没有vue项目的使用vue-cli脚手架生成一个webpack模板的项目即可愉快的看下去了~

如果开发遇到跨域问题可以参考:https://3water.com/article/134571.htm

安装axios到项目中

npm install axios --save

配置wepack别名,不同环境访问不同的配置接口

配置:

vue项目中axios使用详解

使用:import config from 'config'

封装一个axios实例

新建fetch.js,在此创建axios实例与过滤器

若配置了代理。则config.apiBaseUrl则配置代理的前缀即可

import config from 'config'
import axios from 'axios'
// import qs from 'qs';

const instance = axios.create({
 baseURL: config.apiBaseUrl, // api的base_url
 timeout: 10000,    // 请求超时时间
 // transformRequest: data => qs.stringify(data) 
});
axios默认提交格式为:application/json,转换后提交格式为application/x-www-form-urlencoded
在asp.net core中,需要在action方法上添加[FromBody]接收json格式的数据,正常的都是application/x-www-form-urlencoded故有此修改。
按照使用需要安装qs到项目中,可转换数据格式类型
npm install qs --save

使用qs转换请求对比图

vue项目中axios使用详解

给实例添加拦截器

// 添加请求拦截器
instance.interceptors.request.use(function (config) {
 // 在发送请求之前做些什么
 return config;
 }, function (error) {
 // 对请求错误做些什么
 return Promise.reject(error);
 });

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
 // 对响应数据做点什么
 return response;
}, function (error) {
 // 对响应错误做点什么
 return Promise.reject(error);
});
 // 最后暴露实例
export default instance

实例的调用

若配置了express代理,请求路径为:浏览器->express开发服务器-----发送请求---->接口服务器

import fetch from 'fetch.js'
//get
fetch({
 url:'/home/data',//完整的请求路径为fetch.js配置的baseURL+/home/data?pageIndex=1
 method:'GET',
 params:{pageIndex:1}
})
//post
fetch({
 baseURL:'/api/v1',//完整的请求路径为/api/v1/home/save
 url:'/home/save',
 method:'POST',
 data:{id:1}
})

以上就是本次分享的关于vue项目中axios使用的全部内容,感谢你对三水点靠木的支持。

Javascript 相关文章推荐
jQuery Ajax之load()方法
Oct 12 Javascript
js 获取坐标 通过JS得到当前焦点(鼠标)的坐标属性
Jan 04 Javascript
JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能
Nov 03 Javascript
Jquery插件easyUi表单验证提交(示例代码)
Dec 30 Javascript
jQuery中:last-child选择器用法实例
Dec 31 Javascript
js操作滚动条事件实例
Jan 29 Javascript
JavaScript实现添加、查找、删除元素
Jul 02 Javascript
js实现仿爱微网两级导航菜单效果代码
Aug 31 Javascript
Vue框架里使用Swiper的方法示例
Sep 20 Javascript
泛谈JS逻辑判断选择器 || &&
May 24 Javascript
小程序使用watch监听数据变化的方法详解
Sep 20 Javascript
Vue.extend 编程式插入组件的实现
Nov 18 Javascript
vue-cli webpack2项目打包优化分享
Feb 07 #Javascript
浅谈es6中export和export default的作用及区别
Feb 07 #Javascript
Vue封装Swiper实现图片轮播效果
Feb 06 #Javascript
vue中如何使用ztree
Feb 06 #Javascript
javascript回调函数详解
Feb 06 #Javascript
原生JS实现瀑布流插件
Feb 06 #Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
Feb 06 #Javascript
You might like
全国FM电台频率大全 - 12 安徽省
2020/03/11 无线电
PHP四舍五入、取整、round函数使用示例
2015/02/06 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
2015/03/10 PHP
javascript动态改变img的src属性图片不显示的解决方法
2010/10/20 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
JavaScript创建类/对象的几种方式概述及实例
2013/05/06 Javascript
js动态生成指定行数的表格
2013/07/11 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
Node.js中的process.nextTick使用实例
2015/06/25 Javascript
使用jQuery在对象中缓存选择器的简单方法
2015/06/30 Javascript
基于jQuery1.9版本如何判断浏览器版本类型
2016/01/12 Javascript
js实现简单的网页换肤效果
2017/01/18 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
php 修改密码实现代码
2017/05/24 Javascript
JS对象序列化成json数据和json数据转化为JS对象的代码
2017/08/23 Javascript
详解React Native 屏幕适配(炒鸡简单的方法)
2018/06/11 Javascript
webpack4 处理SCSS的方法示例
2018/09/03 Javascript
js实现通过开始结束控制的计时器
2019/02/25 Javascript
详解vue中使用protobuf踩坑记
2019/05/07 Javascript
layui表格内放置图片,并点击放大的实例
2019/09/10 Javascript
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
Python读取Excel的方法实例分析
2015/07/11 Python
python邮件发送smtplib使用详解
2020/06/16 Python
python实现自主查询实时天气
2018/06/22 Python
详解有关PyCharm安装库失败的问题的解决方法
2020/02/02 Python
Python 利用Entrez库筛选下载PubMed文献摘要的示例
2020/11/24 Python
CSS3效果:自定义“W”形运行轨迹实例
2017/03/29 HTML / CSS
CSS3制作皮卡丘动画壁纸的示例
2020/11/02 HTML / CSS
一文彻底解决HTML5页面中长按保存图片功能
2019/06/10 HTML / CSS
房产委托公证书
2014/04/08 职场文书
实习生评语
2014/04/26 职场文书
解除劳动合同协议书(样本)
2014/10/02 职场文书
党的群众路线查摆剖析材料
2014/10/10 职场文书
2015年社会治安综合治理工作总结
2015/04/10 职场文书
素质教育学习心得体会
2016/01/19 职场文书
css实现两栏布局,左侧固定宽,右侧自适应的多种方法
2021/08/07 HTML / CSS