Ich möchte express.js und socket.io Sitzungen zusammenführen. Unten ist mein Code (socket.io Teil)Merge socket.io und express.js Sitzungen
var io = require('socket.io').listen(app);
io.set('log level', 1);
io.sockets.on('connection', function (socket) {
console.log('client connected');
client.send(client.id);//send client id to client itself
socket.on('connect', function(){
console.log(socket.id + ' connected');
});
socket.on('disconnect', function(){
console.log(socket.id + ' disconnected');
});
});
Meine Express.js Einstellungen Session:
app.configure(function() {
//app.use(express.logger());
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.static(__dirname + '/static'));
app.use(express.cookieParser());
app.use(express.session({store: MemStore({
reapInterval: 60000 * 10
}), secret:'foobar', key: 'express.sid'
}));
Mein Hauptproblem in meinem Terminal ist, wenn Benutzer von einer URL zum anderen reist, die Session-ID ändert sich auch: Aber ich will nicht, dass es geändert wird.
info - socket.io started
client connected
client connected
4Z0bYHzfWCEFzbbe4WUK disconnected
e_uSvxhSLbLAC9-F4WUL disconnected
client connected
bKDy90gsrWWTRJDD4WUM disconnected
client connected
RJ5qqCL2wfmXbd7U4WUN disconnected
client connected
wjN5Sqx4rucRtWL_4WUO disconnected
Verbindung war in Ihrem Beispiel nicht definiert. Irgendeine Idee zu lösen? – Yagiz
@Alex Wenn du '' lolbr' 'klonst, vergewissere dich, dass' 'express'' darunter liegt. Einfach klonen, dann '' cd'' hinein und tippe '' npm install'' ein. Das sollte funktionieren. – Fabian
Also, parseSignedCookies sind jetzt nicht verfügbar. Wie schlagen Sie vor, den Code neu zu schreiben? Ich bin nicht vertraut mit Cookies in socket.io, aber ich habe gefunden "var cookies = cookie.parse ('foo = bar; cat = miau; hund = ruff');" Beispiel. Wie soll ich das in diesem Beispiel implementieren? – Yagiz