在sailsjs/passport.js中:如何在视图中以对象身份登录用户



我想在视图中输出用户名,所以我需要获取用户对象。

在中

req.session.passport.user

只有用户id(数字)和

req.user

未定义。使用用户是否存储为会话中的对象?

您应该在某个地方有这样的东西(在service/products/local.js的connect&register函数中,如果您使用了sails generate auth)

Passport.create({
  protocol : 'local'
, password : password
, user     : user.id
}, function (err, passport) {
...

因此,只需在此处添加用户名即可。

您需要配置您的策略。

我通过在APP_ROOT/config/policies.js 中进行更改来实现这一点

  UserController: {
    me: ['passport']
  },
  HomeController: {
   '*': ['passport']
  }

在此之后,用户和主控制器下的所有视图都可以访问用户对象。示例:

<p>Hi <%=res.locals.user.username%></p> 

最新更新