vue更新到2.0之后,作者就宣告不再对vue-resource更新,而是推荐的 axios
基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 node.js 中使用
版本 v0.15.3
功能特性
- 在浏览器中发送
XMLHttpRequests
请求 - 在
node.js
中发送 http请求 - 支持
Promise API
- 拦截请求和响应
- 转换请求和响应数据
- 自动转换
JSON
数据 - 客户端支持保护安全免受
XSRF
攻击
请求方式
axios(config) |
get请求
axios |
post请求
axios |
发送并发请求
axios |
axios.all([])
返回的结果是一个数组,使用 axios.spread
可将数组 [res1,res2]
展开为 res1, res2
直接通过配置发送请求,类似于 $.ajax(config)
axios(config) / axios(url,[config])
axios({ |
axios实例
实例配置
使用自定义的配置创建一个axios实例
var axiosIns = axios.create({ |
axiosIns.get/post/delete/put/patch/head 都可以共用实例配置
请求配置
{ |
响应的数据结构
{ |
全局配置
应用于所有请求
axios.defaults.baseURL = ‘http://www.mt.com/api'
axios.defaults.headers.post[‘Content-Type’] = ‘application/x-www-form-urlencoded’;
拦截请求与响应
在 then
或 catch
之前拦截处理
// 请求拦截 |
错误处理
axios.get('/user/12345') |
取消请求
var CancelToken = axios.CancelToken; |
var CancelToken = axios.CancelToken; |
qs模块
用于处理URL查询参数
var qs = require('qs'); |
更详细更新的文档请参考axios github