axios用法讲解

axios用法

      • axios
        • axios基础用法
        • axios 全局配置
        • axios 拦截器

axios

  • 基于promise用于浏览器和node.js的http客户端
  • 支持浏览器和node.js
  • 支持promise
  • 能拦截请求和响应
  • 自动转换JSON数据
  • 能转换请求和响应数据

axios基础用法

  • get和 delete请求传递参数
    • 通过传统的url 以 ? 的形式传递参数
    • restful 形式传递参数
    • 通过params 形式传递参数
  • post 和 put 请求传递参数
    • 通过选项传递参数
    • 通过 URLSearchParams 传递参数

axios 全局配置

#  配置公共的请求头 
axios.defaults.baseURL = 'https://api.example.com';
#  配置 超时时间
axios.defaults.timeout = 2500;
#  配置公共的请求头
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
# 配置公共的 post 的 Content-Type
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';


axios 拦截器

  • 请求拦截器
    • 请求拦截器的作用是在请求发送前进行一些操作
      • 例如在每个请求体里加上token,统一做了处理如果以后要改也非常容易
  • 响应拦截器
    • 响应拦截器的作用是在接收到响应后进行一些操作
      • 例如在服务器返回登录状态失效,需要重新登录的时候,跳转到登录页
	// 1. 请求拦截器 
	axios.interceptors.request.use(function(config) {
      console.log(config.url)
    // 任何请求都会经过这一步   在发送请求之前做些什么   
      config.headers.mytoken = 'nihao';
    //  这里一定要return   否则配置不成功  
      return config;
    }, function(err){
       //对请求错误做点什么    
      console.log(err)
    })
	//2. 响应拦截器 
    axios.interceptors.response.use(function(res) {
      // 在接收响应做些什么  
      var data = res.data;
      return data;
    }, function(err){
     //对响应错误做点什么  
      console.log(err)
    })

你可能感兴趣的:(vue,vue,javascript,ajax)