什么是 axios?

Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。

特性

  • 从浏览器中创建 XMLHttpRequests
  • 从 node.js 创建 http 请求
  • 支持 Promise API
  • 拦截请求和响应
  • 转换请求数据和响应数据
  • 取消请求
  • 自动转换 JSON 数据 
  • 客户端支持防御 XSRF

直接看官方文档http://www.axios-js.com/zh-cn/docs/#%E4%BB%80%E4%B9%88%E6%98%AF-axios%EF%BC%9F吧,很详细,看完之后也不想全部写了(比较简单),只记录一些自己感觉比较有用的:

//添加请求拦截器 interceptors

axios.interceptors.request.use(function(config){

     //在发送请求之前做某事

     return config;

   },function(error){

     //请求错误时做些事

     return Promise.reject(error);

   });

 

//添加响应拦截器

axios.interceptors.response.use(function(response){

     //对响应数据做些事

     return response;

   },function(error){

     //请求错误时做些事

     return Promise.reject(error);

   });

全局设置默认值:

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';

 

// 使用由库提供的配置的默认值来创建实例
// 此时超时配置的默认值是 `0`
var instance = axios.create();

// 覆写库的超时默认值
// 现在,在超时前,所有请求都会等待 2.5 秒
instance.defaults.timeout = 2500;

// 为已知需要花费很长时间的请求覆写超时设置
instance.get('/longRequest', {
  timeout: 5000
});
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐