我想了解Connect的Session中间件,我想知道以下两者的区别:Session.regenerate()与Session.reload()。具体来说,我检查了文档,没有给出关于会话重新加载实际做什么的解释。同样,我也对Session.save()方法感到困惑。非常感谢任何帮助!
gkl3eglg1#
比较两个函数的源代码:
store.js
Store.prototype.regenerate = function(req, fn){ var self = this; this.destroy(req.sessionID, function(err){ self.generate(req); fn(err); }); };
和
session.js
defineMethod(Session.prototype, 'reload', function reload(fn) { var req = this.req , store = this.req.sessionStore; store.get(this.id, function(err, sess){ if (err) return fn(err); if (!sess) return fn(new Error('failed to load session')); store.createSession(req, sess); fn(); }); return this; });
我把它读成“如果会话存在,就获取它,或者创建一个”vs“销毁以前的会话,给予我一个新的”。
1条答案
按热度按时间gkl3eglg1#
比较两个函数的源代码:
store.js
和
session.js
我把它读成“如果会话存在,就获取它,或者创建一个”vs“销毁以前的会话,给予我一个新的”。