Довольно новый для узла/экспресс. Я проверяю, существует ли пользователь (через имя пользователя) уже в базе данных, к которой вы хотите зарегистрироваться, и сообщите об ошибке, если они уже существуют.Nodejs/Express - Ошибка: невозможно установить заголовки после их отправки
Когда я использую локон, чтобы попытаться установить его намеренно, я получаю следующее сообщение об ошибке:
Error: Can't set headers after they are sent.
Я знаю уже, что первая проверка сделать, чтобы убедиться, что все поля заполнены корректно работает, и не вызывает проблем с настройкой заголовков несколько раз.
Любая помощь была бы принята с благодарностью.
(Мой соответствующий код ниже. Если вам нужно что-нибудь еще, не стесняйтесь сказать об этом!)
router.post('/register', function(req, res, next) {
if(!req.body.username || !req.body.password){
return res.status(400).json({ message: 'Please fill out all fields.' });
}
User.count({ username: req.body.username}, function(err, count){
console.log(count);
if(count > 0) {
return res.status(400).json({message: 'This user already exists!' });
}
});
var user = new User();
user.username = req.body.username;
user.setPassword(req.body.password);
user.save(function(err) {
if(err) { return next(err); }
return res.json({ token: user.generateJWT()});
});
});