我已经在 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 错误
答案 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
承诺中捕获错误。