我正在阅读express-session的文档,但有些地方无法理解。
请看这段代码,是我从一个仓库中找到的:
app.use(session({
resave: true,
saveUninitialized: true,
secret: 'aaabbbccc',
store: new MongoStore({
url: MONGO_URI,
autoReconnect: true
})
}));
现在,我大概明白这里正在发生什么,但还是想确认一下。
resave: true
根据文档的说明,这意味着它将强制将会话保存回会话中,即使它没有改变。好的,没问题吗?但是当会话没有改变时,为什么有人要强制保存会话,这会产生什么区别呢?
saveUninitialized: true
这里我们也为非登录用户存储会话吗?
最后,如果有人能解释一下这行代码(我无法理解)
store: new MongoStore({
url: MONGO_URI,
autoReconnect: true
})
接下来,以上代码中,库的作者是否没有将会话存储在cookie中?而只是存储了cookie标识符?
最后,在描述中他们提到了cookie.httpOnly
、cookie.expires
和cookie.domain
。
现在,我理解了它们的功能,但无法理解它们的实现,如果有人能展示其中任何一个的实现,那就太好了。