我已使用passport local strategy对用户进行身份验证,并使用connect-mongo作为会话存储模块在 mongodb 中保存通信/快速会话,并且我已整合 passport.socketio并授权用户使用
io.use(passportSocketIo.authorize({
cookieParser: cookieParser,
secret: 'sessionSecret',
store: sessionStore,
success: onAuthorizeSuccess,
fail: onAuthorizeFail,
}));
来自 onAuthorizeSuccess 功能我安装了来自passport的 data.user 。现在我可以访问服务器上的数据了。 但是,如何在客户端访问护照用户 req.user 。
data.user 提供的结果与 req.user 相同 function onAuthorizeSuccess (data,accept){
console.log("data from socket: "+data.user);
console.log('successful connection to socket.io');
}
我的客户端代码
$(document).ready(function () {
var socket = io.connect("http://localhost:3000/chat");
socket.on('connect', function () {
//how to access passport user here
console.log("connection establised");
});
});
我的服务器端代码
module.exports = function (io) {
var chat = io.of("/chat").on("connection", function () {
console.log("connection established on the server");
});
};