나는 내 세션과 함께 정말 이상한 중간에있다.왜 sid는 socket.io를 사용하여 쿠키를 구문 분석하고 express를 사용하여 req.session.id의 쿠키를 구할 수 있습니까?
나는 주간에만 작동했으며 SessionStore
(connect-mongo
)에서 세션을 가져 오려고 할 때 undefined variables
을 반환합니다.
좋은 sid를 보내면 몇 주 동안이 방법으로 작동하고 세션 시스템이 작동합니다. 저장된 변수는 req.session
에 액세스 할 수 있기 때문에 작동합니다.
그래서 나는 2 개의 다른 세션이 있을지 궁금 해서요, 거기에 SID를 찾을 수있는 방법이 있나요 req.session
?
이 맞아하지만 난 여기에
를 얻을 SID에서 다른 req.session.id 경우 나도 몰라 코드입니다 :function parseSessionCookie(cookie, sid, secret) {
var cookies = require('express/node_modules/cookie').parse(cookie)
, parsed = require('express/node_modules/connect/lib/utils').parseSignedCookies(cookies, secret)
;
return parsed[sid] || null;
}
io.set('authorization', function(data, accept) {
var sid = parseSessionCookie(data.headers.cookie, 'connect.sid', 'secret');
SessionStore.get(sid, function(err, session) {
//err and session are undefined!
});
});
UPDATE : 문제 않습니다 내가 req.session.id
에서 얻은 sid
이고 그 중 하나는 SessionStore에서 가져온 것입니다! 내가 req.session.id
에서 얻은 sid로 SessionStrore.get()
을 호출하면 모든 것이 잘 작동합니다!
이렇게하면 어떻게 2 개의 다른 세션을 가질 수 있습니까?