Chcę połączyć sesje express.js i socket.io. Poniżej jest mój kod (socket.io część)połączenie sesji socket.io i express.js
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');
});
});
Moi express.js Ustawienia sesji:
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'
}));
Moim głównym problemem jest to, w moim terminalu gdy użytkownik przemieszcza się z jednego adresu URL na inny identyfikator sesji zmienia także: Ale nie chcę, żeby to się zmieniło.
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
Połączenie nie zostało zdefiniowane w twoim przykładzie. Jakiś pomysł na rozwiązanie? – Yagiz
@Alex, jeśli sklonujesz '' lolbr'', upewnij się, że masz pod spodem '' express''. Po prostu sklonuj, następnie '' cd'' i wpisz '' npm install''. To powinno działać. – Fabian
Tak więc, parseSignedCookies nie są już dostępne. Jak sugerujesz ponowne napisanie kodu? Nie znam ciasteczek w socket.io, ale znalazłem "var cookies = cookie.parse (" foo = bar; cat = meow; dog = ruff ");" przykład. Jak mam go wdrożyć do tego przykładu? – Yagiz