Получение ERR_HTTP_HEADERS_SENT при реализации функции входа в систему с помощью метода bcrypt.compare () - PullRequest
0 голосов
/ 28 апреля 2020

Я пытаюсь реализовать функцию входа в систему. Моя функция входа сравнивает пароль, используя метод bcrypt.compare (). Вот вызов метода comparePassword

user.comparePassword(req.body.password, (err, isMatch) => {
  if (!isMatch) {
    //index.js(line number 49:20) res.json
    return res.json({ loginSuccess: false, message: "wrong password" }); 
  }
});

И это метод comparePassword, который снова вызывает функцию обратного вызова.

userSchema.methods.comparePassword = function (plainPassword, cb) {
   bcrypt.compare(plainPassword, this.password, (err, isMatch) => {
      if (err) {
         return cb(err);
      }
      //users.js(line number 68:5) cb(null,isMatch)
      cb(null, isMatch);
   });
};

Полная ошибка выглядит следующим образом:

Ошибка [ERR_HTTP_HEADERS_SENT]: Невозможно установить заголовки после того, как они отправлены клиенту в ServerResponse.setHeader (_http_outgoing. js: 485: 11) в ServerResponse.header (D: \ilerplate \ node_modules \ express \ lib \ response) . js: 771: 10) в ServerResponse.send (D: \ilerplate \ node_modules \ express \ lib \ response. js: 170: 12) в ServerResponse. json (D: \ilerplate \ node_modules \ express \ lib \ response. js: 267: 15) в D: \ шаблон \ индекс. js: 49: 20 в D: \ шаблон \ модели \ пользователь. js: 68: 5 {code: 'ERR_HTTP_HEADERS_SENT '}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...