带有Connect基本身份validation的Expressj不会设置请求用户
我正在使用express并通过连接中间件添加基本身份validation。 我正在尝试使用asynchronous版本,并声称使用asynchronous版本调用时,将在请求对象上设置user
属性。
如果我打电话给正确的fn(err, obj);
与一个对象,然后基本身份validation传递和移动到我的路线,但我希望req.user
设置时,它到达我的路线。
这里是关于基本身份validation的连接文档。
我是不是正确地调用callback?
app.use(express.basicAuth(function(user, pass, fn){ db.getUserByEmail(user, function(err, obj){ if (err) sendError(500, req, 'error', err); else if (obj == null) fn(err, obj); else if (obj.password == pass) fn(null, obj); else fn(null, null); }); }));
我检查了文档中的代码,你已经附加了,它已经设置了req.user,所以,如果这是完全相同的代码执行的文档,一切都应该工作正常:)
顺便说一句,为什么不使用更友好的东西,并像passportjs一样logging良好?
与连接文档中提到的不同,在express中,经过身份validation的用户将被分配给req.remoteUser
- 如何使用htaccess的替代密码保护nodejs应用程序
- 用户点击后退button,而会话仍然被authentication,并被redirect到node.js中的login页面
- 如何处理asynchronous。 findOrCreate护照和mongoose的方法
- PassportJS events.js:160 //未处理的错误连接超时
- 根据MongoDB检查login凭据不起作用
- sails-auth生成器不起作用
- 连接到Heroku PostgreSQL数据库时validation错误
- 使用express-jwt时,为什么我的授权标题在显式存在的时候丢失了
- 使用MEAN +护照更改基于用户angular色的视图