美文网首页
Passport的使用

Passport的使用

作者: 方健 | 来源:发表于2017-01-04 12:51 被阅读273次

Passport的使用

基本步骤:

  • 初始化:app.use(passport.initialize());

  • 安装策略: passport.use(new BasicStrategy(...))

  • 使用策略:app.get('/...', passport.authenticate('basic'),(req,res)=>{...})

  • 其他方便函数:

    • req.user 登陆后存在

    • req.login() 仅在注册时手工调用。登陆时由策略自动调用。

    • req.logout() 登出时调用

用户登录分为无session的和有session的。

  • 无session的,如basic-auth,在每次使用时都要检查
app.get('/api/users/me',
  passport.authenticate('basic', { session: false }),
  function(req, res) {
    res.json({ id: req.user.id, username: req.user.username });
  });
  • 有session的,在第一次由策略=>user。之后每次由sessionid=>user

    • 策略=>user 又分为2步
      1. web数据=>策略参数
      2. 策略参数=>user
    • sessionid=>user 也包含2件事
      1. serializeUser: user=>sessionid
      2. deserializeUser: sessionid=>user

authenticate的作用

  1. 接受web数据,调用策略进行验证。通常绑定到'/login'路由,该路由负责传递所需的web数据。

相关文章

网友评论

      本文标题:Passport的使用

      本文链接:https://www.haomeiwen.com/subject/mepovttx.html