这是我的index.js
app.get('/api/user', auth.authenticate, function(req, res){
res.send("hi");
});
这是我的auth.authenticate功能:
exports.authenticate = function(req, res,done) {
// function checkToken(req,res,next){
console.log(req.body);
authToken = req.body["auth_token"]
consumerKey = req.body["consumer_key"]
checkAuth(authToken,consumerKey,function response(user){
done();
});
}
在进行身份验证后,我想将“user”返回到index.js中的app.get,以便我可以使用它来检索更多数据,但我不知道如何做到这一点。
是否可以通过done()回调发送用户?我尝试了但是没有成功。
答案 0 :(得分:1)
是的,因为在Express.js中传递的请求对象是相同的。只需将其添加到请求中,如下所示:
checkAuth(authToken,consumerKey,function response(user){
request.user = user;
done();
});
然后你可以在index.js
中使用它app.get('/api/user', auth.authenticate, function(req, res){
res.send("hi " + req.user);
});