Итак, у меня есть маршрут, который авторизует пользователя на основе ввода имени пользователя и пароля. Первая проверка, я просто не могу приступить к работе:
exports.user_login = (req, res, next) => {
passport.authenticate('local', { session: false }, (err, user, info) => {
if (err || !user) {
res.status(500).json({
errorMsg: "User could not be authenticated."
});
}
Если я пингую это через почтальона, я получаю соответствующий ответ JSON, что User could not be authenticated
.
Тем не менее, если я использую этот маршрут из своего клиентского кода и попытаюсь console.log
его или что-то еще (по сути, я хочу получить то, что есть errorMsg
, зарегистрировать его в состоянии и отразить это обратно к пользователю), тогда я просто получаю следующий ответ:
axios.post("api/auth/login/", user)
.then(res => {
console.log(res);
this.setState({
username: "",
password: ""
})
localStorage.setItem('bdgt', res.data.token);
})
.catch(err => {
console.log(err);
})
Я смотрел на другой код, который делал ранее, и обычно это работает, и я обычно могу получить доступ к сообщению и сохранить его в состоянии:
this.setState({
error: err.errorMsg
})
Мысли? Чего мне не хватает?
РЕДАКТИРОВАТЬ ... Если я просто позволю этому сделать res.json({ errorMsg: "message....."})
... это работает просто отлично, но возвращает 200
, что явно не то, что я хочу.