vue.js 在同一台PC上使用nuxt.js验证多个应用程序

icomxhvb  于 2022-11-25  发布在  Vue.js
关注(0)|答案(1)|浏览(135)

我有两个应用程序使用auth模块和nuxt.js运行在我的电脑上。我用auth本地策略在这两个应用程序。
我有一个问题,当我登录(验证)在我的第一个应用程序,第二个应用程序不要求验证(两个应用程序在同一台电脑).
我必须删除带有身份验证数据的localstorage,以便我的第二个应用程序要求登录进行身份验证。
我在nuxt.config.js中的nuxt身份验证设置是:

auth: {
    localStorage: {
      prefix: 'auth.',
    },
    strategies: {
      local: {
        scheme: 'refresh',
        token: {
          property: 'data.access_token',
          maxAge: 1800,

          type: 'Bearer',
          required: true,
        },
        refreshToken: {
          property: 'data.refresh_token',
          maxAge: 60 * 60 * 24 * 30,
        },
        user: {
          property: 'data',
          autoFetch: true,
        },
        endpoints: {
          login: {
            url: 'user/login',
            method: 'post',
          },
          refresh: { url: 'user/refreshToken', method: 'post' },
          user: { url: 'user/me', method: 'get' },
          logout: false,
        },
      },
    },
    redirect: {
      login: '/login',
      logout: '/login',
      // callback: '/dash',
      // home: '/clientes',
      home: '/',
    },
  },

是否在配置中有一些特殊设置来避免它我尝试使用不同的localstore前缀,但没有外观

qlfbtfca

qlfbtfca1#

NuxtJs默认启用localStorage作为会话持久性引擎。

auth: {
  localStorage: {
    prefix: 'auth.'
  }
}

您需要在localStorage配置中为每个项目提供不同的前缀(当然,如果您打算继续使用localStorage的话),这样可以确保两个应用不会在同一个键中查找会话令牌。
这就是您要查找的内容https://auth.nuxtjs.org/api/options/#localstorage
也有一个cookie选项,但逻辑保持不变。

相关问题