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 相关文章推荐
身份证号码前六位所代表的省,市,区, 以及地区编码下载
Apr 12 Javascript
JS 文件传参及处理技巧分析
May 13 Javascript
JS验证身份证有效性示例
Oct 11 Javascript
js中的replace方法使用介绍
Oct 28 Javascript
JavaScript检测并限制复选框选中个数的方法
Aug 12 Javascript
深入理解 JavaScript 中的 JSON
Apr 06 Javascript
微信小程序中使用javascript 回调函数
May 11 Javascript
Node.js开发第三方微信公众平台
Jun 05 Javascript
angular select 默认值设置方法
Jun 23 Javascript
VueJs 将接口用webpack代理到本地的方法
Nov 27 Javascript
微信小程序(订阅消息)功能
Oct 25 Javascript
小程序实现列表倒计时功能
Jan 29 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
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
PHP中Memcache操作类及用法实例
2014/12/12 PHP
关于php中一些字符串总结
2016/05/05 PHP
PHP面试常用算法(推荐)
2016/07/22 PHP
php微信公众账号开发之前五个坑(一)
2016/09/18 PHP
PHP命令空间namespace及use的用法小结
2017/11/27 PHP
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
jquery动态加载图片数据练习代码
2011/08/04 Javascript
jquery命令汇总,方便使用jquery的朋友
2012/06/26 Javascript
JS实现局部选择打印和局部不选择打印
2014/04/03 Javascript
jQuery解析XML文件同时动态增加js文件的方法
2015/06/01 Javascript
javascript常见数字进制转换实例分析
2016/04/21 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
Vue.js bootstrap前端实现分页和排序
2017/03/10 Javascript
jQuery实现的导航条点击后高亮显示功能示例
2019/03/04 jQuery
JavaScript中的this基本问题实例小结
2020/03/09 Javascript
解决ant design vue中树形控件defaultExpandAll设置无效的问题
2020/10/26 Javascript
pyramid配置session的方法教程
2013/11/27 Python
Python编写百度贴吧的简单爬虫
2015/04/02 Python
python3对接mysql数据库实例详解
2019/04/30 Python
使用python os模块复制文件到指定文件夹的方法
2019/08/22 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
2019/12/18 Python
Python爬虫爬取、解析数据操作示例
2020/03/27 Python
解决pycharm下pyuic工具使用的问题
2020/04/08 Python
深入理解HTML5定时器requestAnimationFrame的使用
2018/12/12 HTML / CSS
大学毕业生自我鉴定
2013/11/05 职场文书
函授生自我鉴定
2014/03/25 职场文书
环保建议书300字
2014/05/14 职场文书
租房协议书范文
2014/08/20 职场文书
大学团日活动新闻稿
2014/09/10 职场文书
公司领导九九重阳节发言稿2014
2014/09/25 职场文书
原料仓管员岗位职责
2015/04/01 职场文书
横空出世观后感
2015/06/09 职场文书
《蚂蚁和蝈蝈》教学反思
2016/02/22 职场文书
CSS实现多个元素在盒子内两端对齐效果
2021/03/30 HTML / CSS