Nuxt 身份验证模块 GitHub

时间:2021-01-29 09:12:58

标签: nuxt.js

我已经在 nuxt.config.js 中设置了 Nuxt auth 模块并在 GitHub 上创建了一个应用程序。日志记录工作,但是我正在尝试一个简单的 axios 调用,但我不确定我做错了什么:

<template>
    <div>
        <button v-on:click="signIn">click here</button>
    </div>
</template>

<script>
export default {
    methods: {
    signIn () {
        this.$auth.loginWith('github');
        this.$axios.get('https://api.github.com/users/mapbox')
            .then((response) => {
                console.log(response.type);
                console.log(response.id);
                console.log(response.name);
                console.log(response.blog);
                console.log(response.bio);
            });
        }
    }
}
</script>

上面在控制台中给出了 POST 404 错误

1 个答案:

答案 0 :(得分:0)

loginWith() 函数是一个承诺。您忘记了处理响应的 await.then()

async signIn () {
    await this.$auth.loginWith('github');
    this.$axios.get('https://api.github.com/users/mapbox').then(...)
}

signIn () {
    this.$auth.loginWith('github').then((data) => {
        this.$axios.get('https://api.github.com/users/mapbox').then(...)
}

此外,您必须从 loginWith 承诺中捕获错误。