我的Vue应用发出两个Ajax请求。当服务器返回401错误时,我需要刷新access_token。更新access_token后,第一个请求连续,但是第二个请求丢失。
let allowRefresh = true
Vue.http.interceptors.push((request, next) => {
next((response) => {
if (allowRefresh && response.status === 401) {
allowRefresh = false
store.commit('SET_AUTH_REFRESHING')
return user.refresh(request).then(result => {
return Vue.http(request).then(data => {
return data
})
}, () => {
user.logout()
})
}
})
})
其他人希望,只要第一个请求没有结束,我们就需要做所有事情。