我有一个 Nuxt 应用程序,其中“/”路由是注册页面,一旦用户注册并登录,他们就会被重定向到“/dashboard”路由。预期的行为是登录用户被重定向到“/dashboard”,即使他们导航到网站的索引页面,这似乎可以在本地使用
yarn dev
,但不能在生产中使用,而且当我运行 nuxt generate
时也不能使用接下来是nuxt start
。在生产中,如果我导航到“/”路由,我会看到注册页面,并且所有按钮似乎都无法单击,摆脱这种情况的唯一方法是手动添加“/dashboard”路由。
如果您想尝试此行为,相关网站是 sleeprescue.org。请注意,我使用 Nuxt.js 2.15.3 和 Nuxt Auth 进行身份验证。您可以在here找到我的身份验证配置,这是要点:
auth: {
localStorage: true,
watchLoggedIn: true,
redirect: {
login: '/',
logout: '/',
home: '/dashboard',
},
strategies: {
cookie: {
cookie: {
name: 'XSRF-TOKEN',
},
endpoints: {
csrf: {
url: '',
},
},
},
local: {
scheme: 'refresh',
token: {
property: 'data.access_token',
maxAge: 60 * 60 * 24 * 90,
type: '',
},
user: {
property: false,
},
refreshToken: {
property: 'data.renewal_token',
maxAge: 60 * 60 * 24 * 90,
type: '',
},
endpoints: {
login: { url: '/v1/session', method: 'post' },
logout: { url: '/v1/session', method: 'delete' },
refresh: { url: '/v1/session/renew', method: 'post' },
user: { url: '/v1/user', method: 'get', propertyName: false },
},
},
},
},
任何有关如何修复此错误的建议将不胜感激!
我知道这是一个老问题,但我回答是为了帮助其他有类似问题的人。将
callback: '/dashboard'
添加到 redirect
对象。
当你这样做时,你的配置应该如下所示:
redirect: {
login: "/",
logout: "/",
callback: "/dashboard",
home: "/dashboard",
}