クッキーを扱って頭を悩ませています。「identity」という名前の Cookie を読み取ることができるので、以下の「auth」関数内から Cookie を読み取る方法を理解しています。私が直面している問題は、 io.sockets.on()関数内から同じ Cookie にアクセスできないことです。この Cookie は、ユーザーを表す OpenID 値を保持します。
io.configure(function () {
function auth (data, fn) {
var cookies = parse_cookies(data.headers.cookie);
console.log('IDENTITY: ' + cookies.identity);
client.hget('user:'+cookies.identity, 'verified', function (err , reply) {
fn(null, reply == 1);
});
};
io.set('authorization', auth);
});
io.sockets.on('connection', function (socket) {
client.get('user:'+**COOKIE HERE**+':name', function (err , reply) {
socket.emit('example', reply);
});
});