如何使用 connect-mongodb-session 包将相同的 mongo 存储从一个节点应用程序引用到另一个应用程序
How to refer same mongo store from one node app to other app using connect-mongodb-session package
我有两个节点应用程序项目,一个用于登录身份验证服务器 (server_app.js),另一个是仪表板节点项目 (app_dashboard.js)。我将会话存储在名为会话的 mongodb 存储集合中。
server_app.js
const mongoDbStore = require('connect-mongodb-session')(session);
const uuidv4 = require('uuid').v4;
const store = new mongoDbStore({
uri: MONGODB_URI,
collection: 'sessions'
});
app.use(session({
secret: uuidv4(),
cookie: {
path: '/',
domain: 'localhost',
},
store: store,
name: 'sid',
}))
现在我在 cookie 中成功登录后将 session_id 转发到另一个应用程序,我想在我的 app_dashboard.js 会话中引用相同的 MongoDB 商店,我该如何制作可以参考 server_app.js 中使用的相同 mongo 商店来验证我的会话吗?
app_dashboard.js
app.use(session({
secret: uuidv4(),
resave: false,
saveUninitialized: false,
// name: 'sessionid',
// store: store
}))
对 store
和 session
使用相同的选项。两者都需要相同的 secret
,因此为此生成一个密码安全的随机字符串,并通过环境变量 (process.env
).
将其传递给两者
我有两个节点应用程序项目,一个用于登录身份验证服务器 (server_app.js),另一个是仪表板节点项目 (app_dashboard.js)。我将会话存储在名为会话的 mongodb 存储集合中。
server_app.js
const mongoDbStore = require('connect-mongodb-session')(session);
const uuidv4 = require('uuid').v4;
const store = new mongoDbStore({
uri: MONGODB_URI,
collection: 'sessions'
});
app.use(session({
secret: uuidv4(),
cookie: {
path: '/',
domain: 'localhost',
},
store: store,
name: 'sid',
}))
现在我在 cookie 中成功登录后将 session_id 转发到另一个应用程序,我想在我的 app_dashboard.js 会话中引用相同的 MongoDB 商店,我该如何制作可以参考 server_app.js 中使用的相同 mongo 商店来验证我的会话吗?
app_dashboard.js
app.use(session({
secret: uuidv4(),
resave: false,
saveUninitialized: false,
// name: 'sessionid',
// store: store
}))
对 store
和 session
使用相同的选项。两者都需要相同的 secret
,因此为此生成一个密码安全的随机字符串,并通过环境变量 (process.env
).