Tag: passport.socketio

Primus.io和passport.js

我考虑从Socket.io迁移到Primus.io (由于可伸缩性问题),但我缺less的一个主要插件是一个primus- passportjs授权插件(类似passport.socketio )。 你知道这样的插件或代码示例吗?

Node.JS + Passport.SocketIO:编辑并保存`socket.handshake.user`属性

我使用Node.JS(0.10.28),Passport.JS(0.2.0)+ Passport-Google(0.3.0)和Passport.SocketIO(3.0.1)。 目前,我可以通过使用req.user在我的应用程序path中访问由Passport.JS创build的用户: app.get('/profile', function(req, res) { // send user data res.send(req.user); }); 使用Passport.SocketIO,我也能够访问用户: io.sockets.on('connection', function(socket) { // get user data console.log(socket.handshake.user); //… }); 也可以通过在app.get/post/all(…)作用域中使用req._passport.session.user.property = new_property_value来编辑req.user并“保存”它。 然后更新显示在io.sockets.on(…)用户对象中。 我的问题是:是否有可能在io.sockets.on(…)作用域中编辑和“保存” socket.handshake.user ,以便更新后的用户将在app.get/post/all(…)显示req.user中的更改app.get/post/all(…) ? 我已经尝试了以下无济于事: io.sockets.on('connection', function(socket) { // rename username socket.handshake.user.username = 'new_username'; //… }); … app.get('/profile', function(req, res) { // send user data res.send(req.user); // […]

客户端连接两次到服务器,Socket.io

我正在尝试使用passport.socketio将socket.io连接到passport.js来loginlogin用户的用户名。 它是成功的,但它logging了用户名两次,并试图寻找相当长的时间后,我卡住了。 代码部分如下: 服务器代码: var server = http.createServer(app); var io = require('socket.io')(server); io.use(passportSocketIo.authorize({ cookieParser: cookieParser, // the same middleware you registred in express key: 'connect.sid', // the name of the cookie where express stores its session_id secret: 'hello', // the session_secret to parse the cookie store: new (require("connect-mongo")(Esession))({ url: "mongodb://localhost/local" }), // we NEED to […]

Passport.socketio发现会话有问题

我试图从套接字访问会话,但似乎无法build立连接。 没有失败,授权失败,我得到失败callback与以下消息: failed connection to socket.io: No session found 我将把所有的代码放在这里,这样可以更容易地发现我做错了什么。 var express = require('express'); var app = express(); var http = require('http'); var socketio = require('socket.io') var passportSocketIo = require('passport.socketio'); var port = process.env.PORT || 3000; var mongoose = require('mongoose'); var passport = require('passport'); var flash = require('connect-flash'); var morgan = require('morgan'); var cookieParser = […]