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 相关文章推荐
获取DOM对象的几种扩展及简写
Oct 09 Javascript
深入理解Javascript动态方法调用与参数修改的问题
Dec 10 Javascript
解析prototype,JQuery中跳出each循环的方法
Dec 12 Javascript
js使用eval解析json实例与注意事项分享
Jan 18 Javascript
jquery自定义滚动条插件示例分享
Feb 21 Javascript
javascript自定义函数参数传递为字符串格式
Jul 29 Javascript
ajax跨域调用webservice的实现代码
May 09 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
Sep 19 Javascript
jQuery实现级联下拉框实战(5)
Feb 08 Javascript
本地搭建微信小程序服务器的实现方法
Oct 27 Javascript
vuex的使用及持久化state的方式详解
Jan 23 Javascript
layui问题之模拟select点击事件的实例讲解
Aug 15 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
一个MYSQL操作类
2006/11/16 PHP
php插入中文到sqlserver 2008里出现乱码的解决办法分享
2012/07/19 PHP
php 过滤英文标点符号及过滤中文标点符号代码
2014/06/12 PHP
深入浅析yii2-gii自定义模板的方法
2016/04/26 PHP
PHP中大括号'{}'用法实例总结
2017/02/08 PHP
javascript 动态加载 css 方法总结
2009/07/11 Javascript
商城常用滚动的焦点图效果代码简单实用
2013/03/28 Javascript
js检测浏览器版本、核心、是否移动端示例
2014/04/24 Javascript
jQuery Validate验证框架详解(推荐)
2016/12/17 Javascript
微信小程序登录换取token的教程
2018/05/31 Javascript
微信小程序实现登录遮罩效果
2018/11/01 Javascript
webpack 如何解析代码模块路径的实现
2019/09/04 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
2019/10/16 Javascript
原生js实现ajax请求和JSONP跨域请求操作示例
2020/03/14 Javascript
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
python实现文本去重且不打乱原本顺序
2016/01/26 Python
python实现SMTP邮件发送功能
2020/06/16 Python
Python实现ssh批量登录并执行命令
2016/10/25 Python
利用Python中unittest实现简单的单元测试实例详解
2017/01/09 Python
python实现外卖信息管理系统
2018/01/11 Python
PyQt5 pyqt多线程操作入门
2018/05/05 Python
基于python 取余问题(%)详解
2020/06/03 Python
详解pandas赋值失败问题解决
2020/11/29 Python
凯蒂·佩里个人女鞋品牌:Katy Perry Collections
2019/04/04 全球购物
介绍一下如何优化MySql
2016/12/20 面试题
英语系本科生求职信范文
2013/12/18 职场文书
自我反省检讨书
2014/01/23 职场文书
烹饪自我鉴定
2014/03/01 职场文书
银行授权委托书范本
2014/10/04 职场文书
导游词欢迎词
2015/02/02 职场文书
小学运动会前导词
2015/07/20 职场文书
2015年国庆放假通知范文
2015/08/18 职场文书
《你在为谁工作》心得体会(共8篇)
2016/01/20 职场文书
《当代神农氏》教学反思
2016/02/23 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
python实现的人脸识别打卡系统
2021/05/08 Python