axios基本入门用法教程


Posted in Javascript onMarch 25, 2017

这篇文章主要给大家介绍了axios基本入门用法教程,下面话不多说,来看看详细的介绍吧。

首先就是引入axios,如果你使用es6,只需要安装axios模块之后

import axios from 'axios';
//安装方法
npm install axios
//或
bower install axios

当然也可以用script引入

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

axios提供了一下几种请求方式

axios.request(config)

axios.get(url[, config])

axios.delete(url[, config])

axios.head(url[, config])

axios.post(url[, data[, config]])

axios.put(url[, data[, config]])

axios.patch(url[, data[, config]])

这里的config是对一些基本信息的配置,比如请求头,baseURL,当然这里提供了一些比较方便配置项

//config
import Qs from 'qs'
{
 //请求的接口,在请求的时候,如axios.get(url,config);这里的url会覆盖掉config中的url
 url: '/user',

 // 请求方法同上
 method: 'get', // default
 // 基础url前缀
 baseURL: 'https://some-domain.com/api/',




 transformRequest: [function (data) {
 // 这里可以在发送请求之前对请求数据做处理,比如form-data格式化等,这里可以使用开头引入的Qs(这个模块在安装axios的时候就已经安装了,不需要另外安装)

data = Qs.stringify({});
 return data;
 }],

 transformResponse: [function (data) {
 // 这里提前处理返回的数据

 return data;
 }],

 // 请求头信息
 headers: {'X-Requested-With': 'XMLHttpRequest'},

 //parameter参数
 params: {
 ID: 12345
 },

 //post参数,使用axios.post(url,{},config);如果没有额外的也必须要用一个空对象,否则会报错
 data: {
 firstName: 'Fred'
 },

 //设置超时时间
 timeout: 1000,
 //返回数据类型
 responseType: 'json', // default

 
}

有了配置文件,我们就可以减少很多额外的处理代码也更优美,直接使用

axios.post(url,{},config)
 .then(function(res){
  console.log(res);
 })
 .catch(function(err){
  console.log(err);
 })
//axios请求返回的也是一个promise,跟踪错误只需要在最后加一个catch就可以了。
//下面是关于同时发起多个请求时的处理

axios.all([get1(), get2()])
 .then(axios.spread(function (res1, res2) {
 // 只有两个请求都完成才会成功,否则会被catch捕获
 }));

最后还是说一下配置项,上面讲的是额外配置,如果你不想另外写也可以直接配置全局

axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

//当然还可以这么配置
var instance = axios.create({
 baseURL: 'https://api.example.com'
});

本文只是介绍基本的用法,详细看官方文档:https://github.com/axios

两个例子分享给大家:

使用vue2.0+mintUI+axios+vue-router:https://github.com/Stevenzwzhai/vue-mobile-application

使用vue2.0+elementUI+axios+vue-router:https://github.com/Stevenzwzhai/vue2.0-elementUI-axios-vueRouter

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
Aug 04 Javascript
DOM Scripting中的图片切换[兼容Firefox]
Jun 12 Javascript
用JQuery在网页中实现分隔条功能的代码
Aug 09 Javascript
JavaScript函数的调用以及参数传递
Oct 21 Javascript
JSON遍历方式实例总结
Dec 07 Javascript
基于javascript实现全国省市二级联动下拉选择菜单
Jan 28 Javascript
AngularJS中一般函数参数传递用法分析
Nov 22 Javascript
js 输入框 正则表达式(菜鸟必看教程)
Feb 19 Javascript
Angular2库初探
Mar 01 Javascript
简单谈谈js的数据类型
Sep 25 Javascript
小程序异步问题之多个网络请求依次执行并依次收集请求结果
May 05 Javascript
记一次react前端项目打包优化的方法
Mar 30 Javascript
Bootstrap DateTime Picker日历控件简单应用
Mar 25 #Javascript
ECMAScript6 新特性范例大全
Mar 24 #Javascript
Three.js获取鼠标点击的三维坐标示例代码
Mar 24 #Javascript
jQuery插件FusionCharts实现的Marimekko图效果示例【附demo源码】
Mar 24 #jQuery
Node.js和Express简单入门介绍
Mar 24 #Javascript
js鼠标经过tab选项卡时实现切换延迟
Mar 24 #Javascript
详解angular2实现ng2-router 路由和嵌套路由
Mar 24 #Javascript
You might like
如何使用PHP中的字符串函数
2006/11/24 PHP
PHP代码维护,重构变困难的4种原因分析
2016/01/25 PHP
iOS10推送通知开发教程
2016/09/19 PHP
php基于websocket搭建简易聊天室实践
2016/10/24 PHP
php+mysql实现的无限分类方法类定义与使用示例
2020/05/27 PHP
js 将json字符串转换为json对象的方法解析
2013/11/13 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
jQuery实现锚点scoll效果实例分析
2015/03/10 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
2015/09/12 Javascript
JavaScript实现的XML与JSON互转功能详解
2017/02/16 Javascript
JavaScript如何一次性展示几万条数据
2017/03/30 Javascript
Vue使用json-server进行后端数据模拟功能
2018/04/17 Javascript
Node.js创建HTTP文件服务器的使用示例
2018/05/11 Javascript
vue+springmvc导出excel数据的实现代码
2018/06/27 Javascript
利用JS实现一个同Excel表现的智能填充算法
2018/08/13 Javascript
Async/Await替代Promise的6个理由
2019/06/15 Javascript
JavaScript前端开发时数值运算的小技巧
2020/07/28 Javascript
Python通过90行代码搭建一个音乐搜索工具
2015/07/29 Python
简单讲解Python编程中namedtuple类的用法
2016/06/21 Python
Python内存管理方式和垃圾回收算法解析
2017/11/11 Python
pip install urllib2不能安装的解决方法
2018/06/12 Python
Python实现对文件进行单词划分并去重排序操作示例
2018/07/10 Python
python定向爬虫校园论坛帖子信息
2018/07/23 Python
pytorch 中forward 的用法与解释说明
2021/02/26 Python
CSS3中的注音对齐属性ruby-align用法指南
2016/07/01 HTML / CSS
使用CSS3和Checkbox实现JQuery的一些效果
2015/08/03 HTML / CSS
海蓝之谜英国官网:La Mer英国
2020/01/15 全球购物
美国饼干礼物和美食甜点购买网站:Cheryl’s
2020/05/28 全球购物
初中地理教学反思
2014/01/11 职场文书
法学院毕业生求职信
2014/06/25 职场文书
干部作风建设年活动剖析材料
2014/10/23 职场文书
浅谈pytorch中stack和cat的及to_tensor的坑
2021/05/20 Python
MySQL磁盘碎片整理实例演示
2022/04/03 MySQL
配置nginx负载均衡
2022/05/06 Servers
Windows Server 2008配置防火墙策略详解
2022/06/28 Servers
JS前端使用canvas实现扩展物体类和事件派发
2022/08/05 Javascript