我正在构建一个节点/快速应用程序,并使用express-session
和mongo-connect
模块来存储我的会话并在重新启动时保留它们。如何以及何时生成节点/ Express cookie秘密?
但是,每次重新启动服务器时都会生成新的Cookie ID。我已经收窄的问题记在我的会话密钥,这是16个字符这里随机生成的字符串是我的会话代码:
app.use(session({
secret: dbops.randomString(16), // generate a 16 random char string
saveUninitialized: false,
resave: true,
store: new MongoStore({
db: thisDb,
ttl: 14 * 24 * 60 * 60
})
}));
的问题是我randomString
功能 - 当我用一个静态的字符串替换,我的会话通过服务器重新启动持续存在。我的饼干秘密应该是什么?我应该选择一个长随机字符串并存储在一个ENV变量中?
我想我通常仍然对字符串的目的感到困惑,因为我的Cookie SID似乎是随机产生的。
对于这个令人难以置信的彻底和易于理解的答案,我还不够感谢 - 我一直在Google上搜索几个小时,这是我找到的最好,最有针对性的解释。谢谢! –