exeshka
@exeshka
Учусь писать на python

Как это исправить?

Код всегда выдает "Пароль не совпал", если сравнить то что мы отправляем и то что храниться в бд то пароль ничем не будет отличаться

socket.on('account_check', async ({id,password}) => {

    try {
      User.findById(id, (err, user) => {
        if (err) {
          console.error("Error fetching user:", err);
          return;
        }
        if (user) {

          console.log('User:', user);
          if(String(user.password) == password) {
            socket.emit('account_check_response', { user: user });
            console.log("пароль не совпал");
          } else {
            socket.emit('account_check_response', { msg: "password not match" } );
          }
 
        } else {
          console.log('User not found');
        }
      });
    }
    catch {}
  });
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ответы на вопрос 1
mayton2019
@mayton2019
Bigdata Engineer
Подозрительное место. Ты кастишь user.password из неизвестного типа в String.
На каком основании? Почему не из binhex или из base64?
String(user.password)
Нужно доказать что вот эта конверсия правильная. Ну и типы данных надо потрассировать.
что покажет
typeof user.password
typeof password
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы