axios的用法详解
axios: 是一个类库,基于Promise管理的Ajax库,支持浏览器和nodejs的http库,常用于Ajax请求。
特点
从浏览器中创建 XMLHttpRequests
从 node.js 创建 http 请求
支持 Promise API
拦截请求和响应
转换请求数据和响应数据
取消请求
自动转换 JSON 数据
客户端支持防御 XSRF
安装方法
使用 npm:
$ npm install axios
使用 bower:
$ bower install axios
使用 cdn:
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
axios提供了多种请求方式,比如直接发起get或post请求:
执行get请求
// 为给定 ID 的 user 创建请求
axios.get('/user?ID=12345').then(function (response) {console.log(response);}).catch(function (error) {console.log(error);});// 可选地,上面的请求可以这样做
axios.get('/user', {params: {ID: 12345}}).then(function (response) {console.log(response);}).catch(function (error) {console.log(error);});
在get请求中的键值对拼接成URLENCODED式的字符串然后1以问号传递参数的方式,传递给服务器。
执行post请求
axios.post('/user', {firstName: 'Fred',lastName: 'Flintstone'}).then(function (response) {console.log(response);}).catch(function (error) {console.log(error);});
基于Promise,可以执行多个并发请求:
function getUserAccount() {return axios.get('/user/12345');
}function getUserPermissions() {return axios.get('/user/12345/permissions');
}axios.all([getUserAccount(), getUserPermissions()]).then(axios.spread(function (acct, perms) {// 请求现在都执行完成时}));
也可以通过写入配置的形式发起请求:
axios(config)
// 发送 POST 请求
axios({method: 'post',url: '/user/12345',data: {firstName: 'Fred',lastName: 'Flintstone'}
}).then(function(res) {console.log(res)});
在业务中,经常将其封装成为实例的形式调用,便于做通用配置,
例如:
//util.js
const instance = axios.create({baseURL: 'http://some-domain.com/api',timeout: 1000,header: {'Content-Type': 'application/x-www-form-urlencoded'}
}) export default instance
index.js
<tempalte><div></div>
</template>
<script>import Ajax from './util.js'export default {created(): {Ajax ( {method: 'post',url: '/user',data: {firstName: 'Fred',lastName: 'Flintstone'}}).then(res => {console.log(res)})}}
</script>
请求方法的别名
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]])
标注: 在使用别名方法时, url、method、data 这些属性都不必在配置中指定。
并发
处理并发请求的助手函数
axios.all(iterable)
axios.spread(callback)
创建实例
可以使用自定义配置新建一个 axios 实例
axios.create([config])
var instance = axios.create({baseURL: 'https://some-domain.com/api/',timeout: 1000,headers: {'X-Custom-Header': 'foobar'}
});
更多关于axios的配置请参考: https://www.kancloud.cn/yunye/axios/234845
axios的用法详解相关推荐
- python argv 详解_Python3 sys.argv[ ]用法详解
sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个"外部"很关键,因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可 ...
- oracle中的exists 和 not exists 用法详解
from:http://blog.sina.com.cn/s/blog_601d1ce30100cyrb.html oracle中的exists 和 not exists 用法详解 (2009-05- ...
- ROW_NUMBER() OVER()函数用法详解 (分组排序 例子多)
ROW_NUMBER() OVER()函数用法详解 (分组排序 例子多) https://blog.csdn.net/qq_25221835/article/details/82762416 post ...
- python的继承用法_【后端开发】python中继承有什么用法?python继承的用法详解
本篇文章给大家带来的内容是关于python中继承有什么用法?python继承的用法详解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 面向对象三大特征 1.封装:根据职责将属性和方法 ...
- C++中substr()函数用法详解
C++中substr()函数用法详解 原型: string substr (size_t pos = 0, size_t len = npos) const; 返回一个新构造的string对象,其值初 ...
- php theme_path,PHP_Yii2主题(Theme)用法详解,本文实例讲述了Yii2主题(Theme) - phpStudy
Yii2主题(Theme)用法详解 本文实例讲述了Yii2主题(Theme)用法.分享给大家供大家参考,具体如下: 首先看看主要的配置方式: 'components' => [ 'view' = ...
- LayoutInflater的inflate函数用法详解
LayoutInflater的inflate函数用法详解 LayoutInflater作用是将layout的xml布局文件实例化为View类对象. 获取LayoutInflater的方法有如下三种: ...
- Ext.Net学习笔记22:Ext.Net Tree 用法详解
上面的图片是一个简单的树,使用Ext.Net来创建这样的树结构非常简单,代码如下: <ext:TreePanel runat="server"><Root> ...
- WinDbg用法详解
WinDbg用法详解 对WinDbg的方方面面作了详细的讲解. 转载于:https://blog.51cto.com/laokaddk/125111
最新文章
- 解决:请购买WinRAR许可,您注册还剩下40天(WinRAR老是弹出烦人的对话框)
- Oracle区概念总结
- matlab 白色像素点,MATLAB 簡單的計算白色輪廓中像素點的個數
- 【英语天天读】Man's Youth
- 计算机网络安全防护教案,计算机网络安全基础教案.DOC
- 摇一摇根据城市位置推荐酒店
- 物联网全栈教程-从云端到设备(四)
- 最新YYCMS影视源码_比米酷好用_模板超好看
- xshell安装教程
- 互联网日报 | 微信聊天时可直接“搜一搜”了;蚂蚁集团9月18日科创板首发上会;谷歌正式发布安卓11系统...
- Swift 下标用法
- badwords.php,ucenter中词语过滤原理分析
- .NET反编译:使用NET.Reflector+Reflexil插件相结合实现对DLL文件的修改操作
- 一款拥有漂亮外表的Typecho简洁主题-Scarfskin
- Unity Playing模式下鼠标点击放置预制体
- python爬网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...
- golang基础教程
- 仿真器VCS solver 对包含 function 约束的求解
- PFP:面向材料发现的通用神经网络
- 用Java实现一个简单的考试系统
热门文章
- php yii2 api框架,Yii2框架制作RESTful风格的API快速入门教程
- 2017年上半年信息安全工程师考试真题含答案(下午题)
- android命令打包,android 命令打包
- 笔记本电脑风扇声音大_笔记本风扇噪音太大?教你怎么降低笔记本风扇噪音
- js中 var a= b || c;
- 小汤学编程之JavaEE学习day10——Spring
- 本地添加Maven管理
- arcgis10.1连接sqlserver数据库常见问题(转载)
- 关于 vmware虚拟机的一些问题及解决办法备忘
- Android 控制ScrollView滚动到底部