vue-axios中加了全局拦截器+token ,但是有的接口请求的时候不需要带token,例如退出登陆,这样的怎么操作
axios.interceptors.request.use(function (config) {
config.headers['ApiAuth'] = sessionStorage.getItem('apiAuth');
return config;
});
vue-axios中加了全局拦截器+token ,但是有的接口请求的时候不需要带token,例如退出登陆,这样的怎么操作
axios.interceptors.request.use(function (config) {
config.headers['ApiAuth'] = sessionStorage.getItem('apiAuth');
return config;
});
你可以判断一下当前的token是否存在,例如登录前,退出后,找回密码,这些没有登录获取token之前一定为空的。那么为空时不给请求携带token信息就可以了。
if (getToken()) {
config.headers['Authorization'] = `Token ${getToken()}`
}
2 回答12.6k 阅读✓ 已解决
5 回答7.1k 阅读✓ 已解决
5 回答8.2k 阅读
2 回答10.3k 阅读✓ 已解决
2 回答10.4k 阅读✓ 已解决
1 回答5.1k 阅读✓ 已解决
4 回答6.1k 阅读
(1)其实不用管,如果接口不需要token,后端那边的人自然会做相应的处理。
(2)token值是你第一次登录以后,后台返给前端,然后保存到游览器缓存里(获取时也通过缓存即可),不可能每次触发接口便返回token值。(哪怕token有时效,所以不用担心)
(3)axios的全局拦截器貌似并没有你说的这种情况的介绍,至少api里没有~