未处理的承诺拒绝警告。 Passport.js
Unhandled Promise Rejection Warning. Passport.js
没有 catch 块的异步函数,或者拒绝未使用 .catch() 处理的承诺,
在此代码行中
async(req,email,password,done)=>{
const user = await User.findOne({email:email});
if (!user) {
return done(null, false)
//Err, no email found
}
if (!user.comparePassword(password)) {
return done(null, false);
// Err, pass wrong
}
return done(null, user);
// Login succesfull xd
}
我猜你想做的是...
async function login (email,password) {
try {
const user = await User.findOne({email});
if (!user || !user.comparePassword(password)) {
throw new Error('no user or wrong pass');
}
return user;
// Login succesfull xd
} catch (error) {
// errors including any error thrown by await User.findOne
return null;
}
}
没有 catch 块的异步函数,或者拒绝未使用 .catch() 处理的承诺, 在此代码行中
async(req,email,password,done)=>{
const user = await User.findOne({email:email});
if (!user) {
return done(null, false)
//Err, no email found
}
if (!user.comparePassword(password)) {
return done(null, false);
// Err, pass wrong
}
return done(null, user);
// Login succesfull xd
}
我猜你想做的是...
async function login (email,password) {
try {
const user = await User.findOne({email});
if (!user || !user.comparePassword(password)) {
throw new Error('no user or wrong pass');
}
return user;
// Login succesfull xd
} catch (error) {
// errors including any error thrown by await User.findOne
return null;
}
}