Vuejs2 重置vue资源中的令牌-Vue2
在main.js文件中,我将vue资源设置为在每个请求中使用auth头:Vuejs2 重置vue资源中的令牌-Vue2,vuejs2,vue-resource,Vuejs2,Vue Resource,在main.js文件中,我将vue资源设置为在每个请求中使用auth头: Vue.use( VueResource ) let auth = validToken() if( auth ) { Vue.http.interceptors.push( ( request, next ) => { request.headers.set( 'Authorization', auth.token ) request.headers.set( 'Accept', 'appli
Vue.use( VueResource )
let auth = validToken()
if( auth ) {
Vue.http.interceptors.push( ( request, next ) => {
request.headers.set( 'Authorization', auth.token )
request.headers.set( 'Accept', 'application/json' )
next()
} )
}
在注销时,我试图以这种方式删除标题
resetVueRsr: () => {
this.$http.headers.common['Authorization'] = null
}
当用户登录时,将新令牌重置为全局Vue资源,如下所示
this.$http.headers.common['Authorization'] = res.body.token
但一旦新用户登录到站点,vue资源仍会在每个请求中发送以前的令牌。这里我缺少什么?我检查了一下,看起来所有定义的拦截器都添加了一些,然后用于请求
根据您的代码示例,您以某种方式获得了一个带有初始标记的对象,然后将其传递到arrow函数中,因此JS为此创建了一个闭包,以使该对象在函数中可用,我认为这个闭包的生命周期等于您的应用程序的生命周期。我想你有一个温泉浴场
另外,从源代码看,拦截器似乎与公共头不相关,因此您删除和重置拦截器的方式不会改变您的拦截器。我选中了,并且看起来所有定义的拦截器都添加到了一些中,然后用于请求
根据您的代码示例,您以某种方式获得了一个带有初始标记的对象,然后将其传递到arrow函数中,因此JS为此创建了一个闭包,以使该对象在函数中可用,我认为这个闭包的生命周期等于您的应用程序的生命周期。我想你有一个温泉浴场
另外,从源代码看,拦截器似乎与公共头不相关,因此您删除和重置拦截器的方式不会改变您的拦截器