将req.user(PassportJS变量)传递给其他模块

时间:2016-04-04 22:40:24

标签: javascript node.js express passport.js

目前正在使用Node,Express&护照制作应用程序。我到目前为止使用Passport的本地策略和所有身份验证工作。我可以在登录时检索我的req.user变量。(提前道歉,只是学习并习惯节点)

我的问题是,如何将此变量传递给项目中的其他模块?例如:

index.js

var express = require('express');
var app = express();
var http = require('http').Server(app);
var assert = require('assert');
var path = require('path');
var mongoose = require('mongoose');
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
var bodyParser = require('body-parser');

...

require('./routes')(app); //where my authentication is done

var server = http.listen(80, function(){
    console.log('listening on *:80');
});

var socketjs = require('./lib/socket.js');
socketjs.listen(server); //where I want to pass my logged in user info

我应该在socket.js内创建一个功能来提取用户信息并拨打电话吗?如果是这样,你会如何建议我构建它?我宁愿不在客户端将任何用户数据公开为cookie。

提前感谢您的帮助。

0 个答案:

没有答案