【发布时间】:2014-11-27 21:28:37
【问题描述】:
我对会话的作用只有最模糊的概念,the official documentation does not help much,因为它假设我知道会话是什么,因此也知道为什么需要对用户进行序列化和反序列化。
以下是我认为我所知道的:会话就像一张贴在服务器冰箱上的便利贴,上面写着“用户 bob 很酷。让他进来。”每次来自 bob 的新请求时,服务器都会检查便利贴节点并说:“是的。Bob 仍然很酷。”
所以序列化是写便利贴,反序列化是把它记下来。这就是我不明白的:这段代码如何写一个便利贴节点,“完成”在做什么?
passport.serializeUser(function(user, done) {
done(null, user.id);
});
下面的代码是如何丢弃便利贴的? findByID 访问我存储用户的数组。如果“便利贴”即将被丢弃,为什么还需要访问它?
passport.deserializeUser(function(id, done) {
findById(id, function (err, user) {
done(err, user);
});
});
这里的流量到底是什么?
这些示例的其余代码是here
【问题讨论】:
标签: node.js session serialization passport.js