все. Я пытаюсь построить модуль входа в систему. Я использую Nuxt auth для обработки моего рабочего процесса и использую flask для моего RestAPI. Я установил параметры аутентификации в моем nuxt.config.js
, как указано в документах , и адаптировал URL для моего flask API, как показано ниже:
auth: {
strategies: {
local: {
endpoints: {
login: { url: '/auth/', method: 'post', propertyName: 'token' },
logout: { url: '/auth/logout', method: 'post' },
user: { url: '/users/username/', method: 'post', propertyName: 'User' }
},
// tokenRequired: true,
// tokenType: 'bearer'
// autoFetchUser: true
}
}
}
Это мой компонент входа в систему:
<template>
<div>
<form @submit.prevent="userLogin">
<div>
<label>Username</label>
<input type="text" v-model="login.username" />
</div>
<div>
<label>Password</label>
<input type="text" v-model="login.password" />
</div>
<div>
<button type="submit">Submit</button>
</div>
</form>
</div>
</template>
<script>
export default {
data() {
return {
login: {
username: 'newUser27',
password: 'ninjaTurtles1!'
}
}
},
methods: {
async userLogin() {
try {
let response = await this.$auth.loginWith('local', { data: this.login })
console.log(response)
} catch (err) {
console.log(err)
}
}
}
}
</script>
Теперь проблема, с которой я сталкиваюсь, заключается в том, что когда я нажимаю на кнопку входа в систему, чтобы вызвать, отправить форму и вызвать мою функцию входа в систему, вызов в маршрутизации входа в систему успешен, запрос содержит имя пользователя и пароль из формы, и я получаю ответ обратно. Как показано на рисунках:
Тело запроса и Ответ на запрос
Однако вызов конечной точки пользователя завершается неудачно, поскольку тело запроса пусто, таким образом, сервер не может обработать запрос, как показано на рисунке ниже: Пустое тело запроса при вызове конечной точки пользователя.
Я предполагаю, что мой вопрос заключается в том, была ли у меня какая-то неверная конфигурация, которая вызывает тело запроса к конечной точке пользователя должно быть пустым, что не позволяет долго удерживать моего пользователя и сохраняет this.$auth.loggedIn
и this.$auth.user
false.
То, что я пытался выполнить до конца:
- Я попытался переключить запрос в своем API на сообщение, чтобы увидеть, имеет ли это какое-то значение, как вы можете видеть на картинке выше, это не так. И get, и post запрос имеют пустое тело при достижении API.
- Я попытался установить
propertyName
на false
в точке входа пользователя. Как упомянуто здесь . По-прежнему возникает та же проблема. - Я пытался использовать метод
this.$auth.fetchUser()
из функции входа в систему в компоненте, сразу после let response = await this.$auth.loginWith('local', { data: this.login })
. Как рекомендуется в этом ответе r. Тем не менее получить ту же проблему.
Буду признателен за любую рекомендацию или помощь.