Simples Vuejs 路由保护仅使用密码



因此,我正在尝试制作一个路由保护,在将用户重定向到仪表板之前会提示用户输入密码,但是通过所有设置,我仍然可以通过在地址栏键入/dashboard 来访问仪表板。 我有什么:

export default new Router({
mode: 'history',
routes: [
{
path: '/dashboard',
name: 'dashboard',
component: home,
props: true,
beforeEnter: (to, from, next) =>{
if (to.params.senha == to.params.mestre){
next()
} else{
next({name: 'login'})
}
}

其中"senha"是用户输入的,"mestre"是登录组件数据中存储的变量主密码。

这就是登录组件发送到路由器的内容

toApp() {
this.$router.push({
name: "dashboard",
params: { senha: this.senha, mestre: this.mestre }
});

我知道对于 authing 或任何相关内容来说,这不是一种安全的方法,对于一个非常简单的应用程序来说非常简单。

我错过了什么?

上述逻辑工作正常,未发现错误

尝试对路由器推送和测试中的值进行硬编码

this.$router.push({
name: "dashboard",
params: { senha: "senha", mestre: "senha" }
});

如果工作正常,则尝试在路由之前在控制台中打印值

console.log(this.senha, this.mestre);
this.$router.push({
name: "dashboard",
params: { senha: this.senha, mestre: this.mestre }
});

仍然,如果您发现任何问题,请尝试检查控制台是否有任何错误

最新更新