Node.JS (0.10.28)、Passport.JS (0.2.0) + Passport-Google (0.3.0)、および Passport.SocketIO (3.0.1) を使用しています。
現在、次を使用して、アプリのパスで Passport.JS によって作成されたユーザーにアクセスできますreq.user
。
app.get('/profile', function(req, res) {
// send user data
res.send(req.user);
});
Passport.SocketIO を使用して、次のユーザーにアクセスすることもできます。
io.sockets.on('connection', function(socket) {
// get user data
console.log(socket.handshake.user);
//...
});
スコープで使用するreq.user
ことにより、編集して「保存」することも可能です。更新はユーザー オブジェクトに表示されます。req._passport.session.user.property = new_property_value
app.get/post/all(...)
io.sockets.on(...)
私の質問は次のとおりです。更新されたユーザーがに変更を表示するように、スコープをsocket.handshake.user
編集して「保存」することは可能ですか? 私は無駄に次のことを試しました:io.sockets.on(...)
req.user
app.get/post/all(...)
io.sockets.on('connection', function(socket) {
// rename username
socket.handshake.user.username = 'new_username';
//...
});
...
app.get('/profile', function(req, res) {
// send user data
res.send(req.user); // returns {..., username: 'old_username', ...}
});