我使用vuex-persistedstate
库将vuex数据保存到localStorage
中。问题是在jwt到期后,相应的身份验证数据没有得到reset()
,因此似乎用户仍在进行身份验证,但是Authorization
标头在传出请求中不再存在,因此我从后端收到403错误。我无法捕获所有403响应以强制注销,因为在其他情况下,可能会返回此类代码。
我在nuxt.config.js
中的身份验证配置(省略了与问题无关的其他配置):
...
plugins: [
{ src: '~/plugins/vuex-persist', mode: 'client' }
],
modules: [
'@nuxtjs/auth',
],
auth: {
strategies: {
local: {
endpoints: {
login: { url: '/auth/login', method: 'post', propertyName: 'user.token' },
logout: false,
user: { url: '/buyer/profile', method: 'get', propertyName: 'user' }
}
}
}
}
...
我的猜测是vuex-persistedstate
引起了问题,因为它在本地存储中存储了具有不同密钥的身份验证数据,因此身份验证模块无法清除数据,因此是否可以在令牌过期后应用任何回调? / p>