axios 的用法解析
axios 的非常好的请求数据方式,利用了 promise 的方式来进行的操作
首先 promise 是非常好的处理 异步请求的方式,且拥有高并发请求的能力
并发请求:出现大量的异步请求后,一起处理
axios 的基本用法
下载:npm i axios -S
引入:import axios from "axios"
第一种方式:
get 的请求方式:
axios.get('地址',params:{id:1}).then(function(result){ // params:{} 里面存放向后台发送的数据
console.log(result) // 成功的回调函数
}).catch(function(error){
console.log(error) // 失败的回调函数
})
post 的请求方式
axios.post('地址',{id:1}).then(function(result){ // {id:1} 就是要发送的数据,与 get 的方式有些差别, 且发送过去的数据到后台 是 json 的格式,并不是传统的表单格式
console.log(result) // 成功的回调函数
}).catch(function(error){
console.log(error) // 失败的回调函数
})
axios 是用 promise 封装的一个 ajax
第二种方式:
get 方式
axios({
method:"get", // 请求的方式
url:"地址", // url 地址
params:{id:1} // 仅限 get 方式像后台传输的数据
}).then(function(result){
console.log(result) // 请求成功的函数
}).catch(function(error){
console.log(error) // 请求失败的函数
})
post 方式
axios({
method:"post",
url:"地址",
data:{}, // 传递的数据,在这里我们注意以下,我们传递的数据是 json 格式,传统的 ajax 传递的数据是 字符串的格式,user=blue&age=20,所以冲突
data:Qs.stringify({}) // 像这种写法,我们将会以传统的表单形式向后台发送数据, 下面会讲解 qs ,两种 data 二选一
}).then(res=>{
console.log(res)
})
解决方法,我们需要在 引入 qs 的插件,利用 npm 下载的 axios 里面自带了 qs 的插件无需下载;
使用方法:
import Qs from "qs";
在 data 中使用 Qs.stringify() // 这个里面传入数据即可成为 字符串格式,不这样写便是 json 格式
第三种方式(第一种与第二种的结合版):创建实例的方式,也是用的最多的方式,可以用来处理很多的请求数据的操作,且是按顺序请求的
var instance = axios.create({ // 创建一个实例
baseURL:"", // 代表一个公共的地址,主要是 http 域名 端口,一致的东西,可以放在这里
timeout:1000 // 超过时间中断
});
axios.all([
instance({ // 第一个实例
url:"", // 代表公共地址后面的地址
method:"" // 代表请求的方式
}),
instance({ // 第二个实例
url:"", // 代表公共地址后面的地址
method:"" // 代表请求的方式
})
]).then(axios.spread(function(res1,res2){ // axios.spread() 相当于结构赋值,让 res1 代表了 第一个实例获取的数据,res2 代表了第二个获取实例的数据
console.log(res1) // 这个代表第一个实例获取的数据
console.log(res2) // 这个代表第二个实例获取的数据
}))
案例:

axios 的用法解析的更多相关文章
- extern "c"用法解析
转自: extern "c"用法解析 - 简书 引言 C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数.但是,C++毕竟是一种面向对象的程序设计语言, ...
- WordPress的have_posts()和the_post()用法解析
原文地址:http://www.phpvar.com/archives/2316.html 网上找到一篇介绍WordPress的have_posts()和the_post()用法解析的文章,觉得不错! ...
- extern "C" 用法解析
extern "c"用法解析 作者 作者Jason Ding ,链接http://www.jianshu.com/p/5d2eeeb93590 引言 C++保留了一部分过程式语言的 ...
- mysql group by 用法解析(详细)
在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的 ...
- (转载)mysql group by 用法解析(详细)
(转载)http://blog.tianya.cn/blogger/post_read.asp?BlogID=4221189&PostID=47881614 mysql distinct 去重 ...
- group by 用法解析
group by 用法解析 group by语法可以根据给定数据列的每个成员对查询结果进行分组统计,最终得到一个分组汇总表. SELECT子句中的列名必须为分组列或列函数.列函数对于GROUP BY子 ...
- sql中的group by 和 having 用法解析
转载博客:http://www.cnblogs.com/wang-123/archive/2012/01/05/2312676.html --sql中的group by 用法解析:-- Group B ...
- C/C++之extern "C"的用法解析
extern "C"的用法解析 http://blog.sina.com.cn/u/494a1ebc010004g5 C++中extern “C”含义深层探索 1.引言 C++语言 ...
- ZT extern "C"的用法解析
extern "C"的用法解析 1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同. ...
随机推荐
- mybatis查询返回的对象不为null,但是属性值为null
返回的对象不为null,但是属性值为null 代码如下: <resultMap id="BaseResultMap" type="com.trhui.ebook.d ...
- 解决:使用java连接Fastdfs,上传文件时报:SocketTimeOutException的问题
最近研究了下分布式存储Fastdfs,在centOS上配置完后,使用centOS或putty连接并上传图片,然后用浏览器读取storage server返回的URL,一切正常. 但是,使用eclips ...
- String,到底创建了多少个对象?
String str=new String("aaa"); <span style="font-size:14px;">String str=n ...
- Spingboot项目的创建与启动(基于IDEA)
一.Springboot的创建 1.Springboot的优点: Springboot是来简化Spring框架,从而能够更加简单快捷的构建Spring应用的框架,其具有如下优点: ①为所有Spring ...
- textarea 限制输入字数
一般情况下很多人限制textarea的输入字数会使用 onkeyup 或 onchange事件,但是这两种事件都带有明显的不足. onkeyup 事件只能监听键盘事件,而对于用户的粘贴毫无办法:而on ...
- Delphi 参数的传递
- 2019.10.28sql注入工具
SQLMAP工具的使用 sql注入工具:明小子 啊D 萝卜头 穿山甲 sqlmap等等 开源自动化注入利用工具,支持12中数据库,在/plugins中可以看到支持的数据库种类 支持的注入类型:bool ...
- python-嵌套函数
python-嵌套函数 定义:在函数体内用def定义一个函数,它的作用域只在该函数体内有效. def outside(): print("int the outside") def ...
- linux 查看cpu核心数
1.查看CPU个数 cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l 2.查看每个物理CPU含有的核心个数 cat /pr ...
- height 自适应问题
何为高度自适应? 高度自适应就是高度能跟随浏览器窗口的大小改变而改变,典型的运用在一些后台界面中上面一栏高度固定用作菜单栏或导航栏,下面一栏高度自适应用于显示内容.高度自适应不像宽度自适应那样简单,在 ...