const LocalStrategy = require('passport-local').Strategy
passport.use(new LocalStrategy(async function (username, password, done) {
// FK: 根据username从数据库或者其他存储中拿到用户信息
let user = await userStore.getUserByName(username)
// FK: 把传入的password和数据库中存储的密码进行比较。当然这里不应该是明文,一般是加盐的hash值
if (user && validate(password, user.hash)) {
done(null, user)
} else {
log.info(`auth failed for`, username)
done(null, false)
}
}))
koa-passport中间件使用的时候,里面有好多done回调函数么请问这个函数是在哪里实现的呢?是已经实现好的?还是需要自己实现呢?看了好几个教程,还是不明白如何使用,比较凌乱。
参考教程如下:
https://segmentfault.com/a/11...
done
是回调函数,意思是告诉调用你的人(passport
)你已经执行完你要执行的内容了,让它继续跑它的逻辑。一般是以
done(err,data)
的形式回调。