Nuxt Auth不适用于Google策略

时间:2020-03-30 14:54:09

标签: authentication google-oauth nuxt.js

我正在尝试在Nuxt网站前实施Google身份验证。我使用社区Auth module和内置的Google策略。实际上,身份验证在localhost中可以很好地工作,但是当网站在线时它不能工作。有时,Google会显示401错误(对于无效的凭据)。

这是我的nuxt.config.js文件的样子:

export default {
  mode: 'spa',

  modules: [
    "@nuxtjs/axios",
    "@nuxtjs/auth",
    "@nuxtjs/vuetify",
  ],

  auth: {
    strategies:{
      google: {
        client_id:
          "XXXXXXXX-xxxxxxxxxxxxxxx.apps.googleusercontent.com"
      }
    },
    redirect: {
      login: '/login',
      logout: '/login',
      home: '/',
      callback: '/callback'
    }
  }
}

这是我的login.vue页面:

<template>
  <v-btn @click="loginClicked()">Login with Google</v-btn>
</template>

<script>
  export default {
      middleware: ['auth'],
      methods: {
        consoleLog(text) {
            if (this.log !== null) {
                this.log += text + "\n";
            } else {
                this.log = text + "\n";
            }
        },
        async loginClicked() {
            try {
                let res = await this.$auth.loginWith('google');
                console.log("login result: " + res);
            } catch (err) {
                this.consoleLog("login error: " + err);
            }
        }
    }
  }
</script>

2 个答案:

答案 0 :(得分:3)

localhost:1081

这对我有用:)

答案 1 :(得分:1)

看来Nuxt-Auth模块的最新更新解决了我的问题(v4.9.1)。 更改日志声明了用于回调路由检查的oauth2修复程序。