axios 设置拦截器 全局设置带默认参数(发送 token 等)

应用场景:

1,每个请求都带上的参数,比如token,时间戳等。

2,对返回的状态进行判断,比如token是否过期

代码如下:

[javascript] view plain copy

  1. axios.interceptors.request.use( 
  2.         config => { 
  3. var xtoken = getXtoken() 
  4. if(xtoken != null){ 
  5.                 config.headers['X-Token'] = xtoken 
  6.             } 
  7. if(config.method=='post'){ 
  8.                 config.data = { 
  9.                     ...config.data, 
  10.                     _t: Date.parse(new Date())/1000, 
  11.                 } 
  12.             }else if(config.method=='get'){ 
  13.                 config.params = { 
  14.                     _t: Date.parse(new Date())/1000, 
  15.                     ...config.params 
  16.                 } 
  17.             } 
  18. return config 
  19.         },function(error){ 
  20. return Promise.reject(error) 
  21.         } 
  22.     ) 
  23. axios.interceptors.response.use(function (response) { 
  24. // token 已过期,重定向到登录页面
  25. if (response.data.code == 4){ 
  26.         localStorage.clear() 
  27.         router.replace({ 
  28.                         path: '/signin', 
  29.                         query: {redirect: router.currentRoute.fullPath} 
  30.                     }) 
  31.     } 
  32. return response 
  33. }, function (error) { 
  34. // Do something with response error
  35. return Promise.reject(error) 
  36. }) 

转载于:https://www.cnblogs.com/mouseleo/p/8262421.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值