例如某个页面要请求多个接口,接口均需要token,此时token不存在或过期,这多个请求就会一起去请求token,能否提供一个功能类似是这样,请求前锁定,验证token有效或者无效了拿回真正token后,unlock同时发出的请求继续执行,这样就不会同时去请求token
request.interceptors.request.use((config) => {
return new Promise((resolve, reject) => {
// console.log("请求拦截器");
request.lock()
getAccessToken()
.then((data) => {
const {
tokenType,
value
} = data
config.headers['Authorization'] = tokenType + ' ' + value
resolve(config)
request.unlock()
})
.catch((error) => {
request.unlock()
reject(error)
})
})
})
当然也可以在每个请求resolve之后再执行下一个请求,但不那么优雅
谢谢大佬
例如某个页面要请求多个接口,接口均需要token,此时token不存在或过期,这多个请求就会一起去请求token,能否提供一个功能类似是这样,请求前锁定,验证token有效或者无效了拿回真正token后,unlock同时发出的请求继续执行,这样就不会同时去请求token
当然也可以在每个请求resolve之后再执行下一个请求,但不那么优雅
谢谢大佬