login后无法正常工作

我试图用bcrypt来validation用户的密码。 但是,不幸的是,我的后请求不起作用,它只是加载了很长时间,就是这样。

我有这个代码的模型user.js:

UserSchema.methods.comparePasswords = function (password) { return bcrypt.compare(password, this.password); }; 

而我有一个控制器auth.js与此代码:

 export const signin = async (req, res, next) => { const { login, password } = req.body; const user = await User.findOne({ login }); if (!user) { return next({ status: 400, message: 'User not found' }); } try { const result = await user.comparePasswords(password); } catch (e) { return next({ status: 400, message: 'Bad Credentials' }); } req.session.userId = user._id; req.json(user); }; 

错误input的处理效果很好,服务器为我返回错误消息,但不处理正确的input。