Vue学习之axios的使用方法实例分析


Posted in Javascript onJanuary 06, 2020

本文实例讲述了Vue学习之axios的使用方法。分享给大家供大家参考,具体如下:

Axios 是一个用于实现网络数据请求的JavaScript库,可以用在网页和 node.js 中,用于创建 XMLHttpRequests,vue官方支持使用axios代替vue--resourse来实现网络数据请求。

使用前需要在你的项目中安装axios,例如通过npm安装库:

npm install --save axios

接着在项目中引入axios:

import axios from 'axios'

1、get请求

直接使用axios的全局变量来调用get方法,get中第一个参数传递url,第二个参数是相关配置,在其中可以传递params参数(参数以?形式加在url末尾),进行header的设置等。使用.then接收返回值,可以采用函数来处理返回结果res,其中res.data或者res.body是返回的数据。使用.catch捕获异常,并可以打印错误信息参数error。

axios.get('data/zodiac.json',{
 params:{
  id:"101"
 },
 header:{
  token:"axios"
 }
}).then(res =>{
 this.msg=res.data;
}).catch(error =>{
 console.log(error);
})

2、post请求

post方法调用、回掉、异常捕获的使用与get类似。不同的是其参数分为三个,第一个是url地址,第二个是要传递的数据,第三个是传输选项配置。与get方法不同,post专门使用第二个参数进行数据传递,而不像get中将数据设置在配置选项params中。

axPost(){
 axios.post('./data/test.php',    //url
  {                 //发送的数据
   userId:'105'
  },
  {                 //option选项
   headers:{
    token:"axPost"
   }
  }
 ).then(res =>{            //接收结果
  this.msg=res.data;
 }).catch(err=>{           //处理错误
  this.msg=err;
 })
}

3、HTTP请求

也可以直接使用http进行数据请求,直接进行url、method、data、headers、params等的设置,例如使用http发送post请求:

axios({
 url:"http://localhost:63342/Web/Learning/Javascript/Vue/VueStart/data/zodiac.json",
 method:"post",
 data:{
  userId:"106"
 },
 headers:{
  token:"axHttp"
 }
}).then(res=>{
 this.msg=res.data;
})

4、拦截器

axios也提供了在网络请求发送前与数据返回时进行拦截的函数interceptors,以便进行相关处理。例如在发送前使用request.use拦截,进行你想要的执行的操作后再将config返回出去,在请求返回时使用response.use进行拦截,操作后再将结果返回:

axios.interceptors.request.use(config =>{
 console.log("axois请求");
 return config;
});
axios.interceptors.response.use(res =>{
 console.log("axois回调");
 return res;
})

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
用js实现的一个Flash滚动轮换显示图片代码生成器
Mar 14 Javascript
优化innerHTML操作(提高代码执行效率)
Aug 20 Javascript
javascript字符串与数组转换汇总
May 26 Javascript
Node.js之网络通讯模块实现浅析
Apr 01 Javascript
js中el表达式的使用和非空判断方法
Mar 28 Javascript
JavaScript实现多态和继承的封装操作示例
Aug 20 Javascript
jQuery轻量级表单模型验证插件
Oct 15 jQuery
微信小程序实现顶部下拉菜单栏
Nov 04 Javascript
javascript设计模式 ? 适配器模式原理与应用实例分析
Apr 13 Javascript
uni-app微信小程序登录授权的实现
May 22 Javascript
深度解读vue-resize的具体用法
Jul 08 Javascript
vue3.0 自适应不同分辨率电脑的操作
Feb 06 Vue.js
vue 微信扫码登录(自定义样式)
Jan 06 #Javascript
React学习之JSX与react事件实例分析
Jan 06 #Javascript
vue学习之Vue-Router用法实例分析
Jan 06 #Javascript
借助云开发实现小程序短信验证码的发送
Jan 06 #Javascript
React学习之受控组件与数据共享实例分析
Jan 06 #Javascript
Node.js创建一个Express服务的方法详解
Jan 06 #Javascript
JS正则表达式验证端口范围(0-65535)
Jan 06 #Javascript
You might like
php使用Cookie控制访问授权的方法
2015/01/21 PHP
Redis使用Eval多个键值自增的操作实例
2016/11/04 PHP
PHP学习记录之数组函数
2018/06/01 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
js继承的实现代码
2010/08/05 Javascript
JavaScript中两种链式调用实现代码
2011/01/12 Javascript
jQuery实现用方向键控制层的上下左右移动
2013/01/13 Javascript
jquery实现每个数字上都带进度条的幻灯片
2013/02/20 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
2013/10/08 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
怎么限制input的text里输入的值只能是数字(正则、js)
2016/05/16 Javascript
AngularJS框架的ng-app指令与自动加载实现方法分析
2017/01/04 Javascript
JS实现点击按钮可实现编辑功能
2018/07/03 Javascript
详解webpack打包nodejs项目(前端代码)
2018/09/19 NodeJs
es6数组includes()用法实例分析
2020/04/18 Javascript
js实现日历
2020/11/07 Javascript
Python实现感知器模型、两层神经网络
2017/12/19 Python
Python模块WSGI使用详解
2018/02/02 Python
Python多线程扫描端口代码示例
2018/02/09 Python
Python cookbook(数据结构与算法)从序列中移除重复项且保持元素间顺序不变的方法
2018/03/13 Python
django DRF图片路径问题的解决方法
2018/09/10 Python
python实现杨氏矩阵查找
2019/03/02 Python
python配置文件写入过程详解
2019/10/19 Python
三个python爬虫项目实例代码
2019/12/28 Python
PyQt5的QWebEngineView使用示例
2020/10/20 Python
Django如何继承AbstractUser扩展字段
2020/11/27 Python
python 图像增强算法实现详解
2021/01/24 Python
关于HTML5 Placeholder新标签低版本浏览器下不兼容的问题分析及解决办法
2016/01/27 HTML / CSS
video实现有声音自动播放的实现方法
2020/05/20 HTML / CSS
美赞臣营养马来西亚旗舰店:Enfagrow马来西亚
2019/07/26 全球购物
Yummie官方网站:塑身衣和衣柜必需品
2019/10/29 全球购物
应届生妇产科护士求职信
2013/10/27 职场文书
2014年社区教育工作总结
2014/12/02 职场文书
女方家长婚礼答谢词
2015/09/29 职场文书
「我的青春恋爱物语果然有问题。-妄言录-」第20卷封面公开
2022/03/21 日漫