我正在使用vue-auth 插件在我的 Vue.js 前端处理用户身份验证。在路由(使用 vue-router)中,插件允许您将元数据传递给路由,说明用户是否需要通过身份验证才能访问该路由(以及它的子路由),如下所示:
routes: [
{
path: "/painel",
meta: { auth: true },
component: () => import("@/view/pages/Painel.vue")
},
{
path: "/login",
meta: { auth: false },
component: () => import("@/view/pages/auth/Login")
}
]
而且效果很好,在此示例中,如果用户未通过身份验证,则页面会为 painel 视图引发 401 错误并重定向到登录。
我想要的是能够在会话过期时自动将用户重定向到登录页面。现在,如果我刷新页面,它只会将用户重定向到登录页面,否则用户仍然可以四处漫游,虽然从 API 获得一堆 401 错误),但仍然可以在我的 SPA 应用程序中导航。有谁知道如何做到这一点?