javascript - Nuxt Window Reload 未获取已登录用户
问题描述
所以我们为我们的应用实现了一个谷歌登录。登录工作,一旦用户登录,身份验证在后端完成。问题是当用户登录并被授予访问 nuxt 中页面的权限时,如果用户刷新窗口,它就会被注销。
这是我的 nuxt.config
auth: {
strategies: {
local: {
endpoints: {
login: {url: 'auth/login', method: 'post', propertyName: 'token'},
user: { url: 'user', method: 'get', propertyName: 'data'},
logout: { method: 'get', url: 'logout'}
}
}
},
redirect:{
logout: '/signin'
}
},
router: {
middleware: ['auth']
},
我正在使用 nuxt auth 库设置用户。
这是我所拥有的:
export default {
auth: false,
data() {
console.log('token',this.$route.query.token)
return {
token: this.$route.query.token ? this.$route.query.token : null
}
},
mounted() {
this.$auth.setUserToken('Bearer ' + this.token).then((res) => {
console.log(res.data.data)
this.$auth.setUser(res.data.data);
return this.$router.push('/');
})
.catch( (e) => {
this.$auth.logout();
return this.$router.push(`/auth/login?error=1`);
});
}
}
有什么想法可以在卷绕机重新加载时使用户保持登录状态吗?
解决方案
您必须将令牌保存在某处并在页面重新加载时恢复它,
您可以使用他们内置的 $storage 方法https://auth.nuxtjs.org/api/storage
推荐阅读
- python-3.x - 尝试使用 PIL 从图像中提取元数据时出现 Unicode 解码错误
- python - 我不知道如何用 PCA9685 实现左转和右转
- php - 如何在 A1:AH1 下设置 phpspreadsheet 所有列的字体大小
- docker-compose - docker-compose 中的气流服务主机无法更改时区
- php - 从 JSON 文件中提取图像 (php)
- javascript - `let count = useRef(0).current` 的缺点是什么
- html - 将项目符号与换行文本对齐的 HTML 列表
- go - Go bytes buffer - 从底层预分配的字节切片/数组中读取
- histogram - Grafana Promql 直方图分位数查询问题
- amazon-ecs - CannotStartContainerError:来自守护进程的错误响应:OCI 运行时创建失败:container_linux.go:370:导致启动容器进程