Skip to content

Instantly share code, notes, and snippets.

@marihachi
Last active May 4, 2017 07:47
Show Gist options
  • Save marihachi/7621cbde7ffd287fedd9b1aa3ce7b70b to your computer and use it in GitHub Desktop.
Save marihachi/7621cbde7ffd287fedd9b1aa3ce7b70b to your computer and use it in GitHub Desktop.
socket.io(サーバ側)からexpressのセッションを取得
const io = require('socket.io')(http);
const session = require('express-session');
const RedisStore = require('connect-redis')(session);
const cookie = require('cookie');
const cookieParser = require('cookie-parser');
const inspect = require('util').inspect;
const store = new RedisStore();
const sessionCookieName = 'sid';
const sessionSecret = 'hoge';
io.sockets.on('connection', socket => {
console.log(`connect: id=${socket.id}`);
const cookies = cookieParser.signedCookies(cookie.parse(socket.request.headers.cookie), sessionSecret);
store.get(cookies[sessionCookieName], (err, session) => {
console.log(`session: ${inspect(session)}`);
});
});
@marihachi
Copy link
Author

express側のコードは省略

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment