使用oauth node.js在db中创建用户

时间:2017-11-03 13:47:49

标签: javascript node.js authentication oauth

我已经设置了快速服务器,我正在使用passport.js 我正在使用本地策略,我正在验证用户

passport.use(new Strategy({
    usernameField: 'email'
  }, (email, password, cb) => {
  db.get().collection('user').findOne({email: email}, (err, user) => {
    if (err) {
      return cb(err)
    }
    if (!user) {
      return cb(null, false)
    }
    if (!bcrypt.compareSync(password, user.password)) {
      return cb(null, false)
    }
    return cb(null, user)
  })
}))

我正在路由器中创建用户:

router.post('/signup', (req, res) => {
  const user = poster.user(req.body)
  if(user){
    db.get().collection('user').insert(user)
    res.send('success')
  }else{
    res.send('error')
  }
  // res.send(req.body)
})

我的问题是我如何用oauth创建用户?或者,当我使用oauth时,我甚至会在我的数据库中创建一个用户?我希望用户能够使用facebook,twitter和google登录。

0 个答案:

没有答案