axios的简单介绍及封装

axios功能的特点:

  • 在浏览器中发送 XMLHttpRequests 请求
  • 在 node.js 中发送 http请求
  • 支持 Promise API
  • 拦截请求和响应
  • 转换请求和响应数据
  • 等等

axios请求方式:

  • axios(config)
  • 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]])

 axios的简单介绍及封装_第1张图片

可能需求同时发送两个请求。使用axios.all, 可以放入多个请求的数组

axios的简单介绍及封装_第2张图片

全局配置

在开发中可能很多参数都是固定的。这个时候可以进行一些抽取, 也可以利用axiox的全局配置

axios的简单介绍及封装_第3张图片

常见的配置选项

请求地址    url: '/user'

请求类型    method: 'get'

请根路径    baseURL: 'http://www.mt.com/api'

请求前的数据处理    transformRequest:[function(data){}]

请求后的数据处理    transformResponse: [function(data){}]

自定义的请求头    headers:{'x-Requested-With':'XMLHttpRequest'}

URL查询对象  params:{ id: 12 }  (请求方式是get时

查询对象序列化函数    aramsSerializer: function(params){ }

request body    data: { key: 'aa'}(请求方式是post时

超时设置s    timeout: 1000,

跨域是否带Token    withCredentials: false,

自定义请求处理    adapter: function(resolve, reject, config){},

身份验证信息    auth: { uname: '', pwd: '12'},

响应的数据格式 json / blob /document /arraybuffer / text / stream    responseType: 'json',

axios封装

axios的简单介绍及封装_第4张图片

axios的简单介绍及封装_第5张图片

如何使用拦截器

axios提供了拦截器,用于我们在发送每次请求或者得到相应后,进行对应的处理。

axios的简单介绍及封装_第6张图片

axios的简单介绍及封装_第7张图片

你可能感兴趣的:(axios的简单介绍及封装)