如何在 connect-mongo 中使用会话?
Posted
技术标签:
【中文标题】如何在 connect-mongo 中使用会话?【英文标题】:How to use sessions with connect-mongo? 【发布时间】:2017-10-11 07:20:44 【问题描述】:在connect-mongo
的文档中,我只阅读了关于它的设置,仅此而已。如何定义会话?怎么读?
const mongoose = require("mongoose");
mongoose.Promise = Promise;
const session = require('express-session');
const MongoStore = require('connect-mongo')(session);
mongoose.connect('mongodb://localhost/MYDATABASE');
app.use(session(
secret: "SOME_SECRET_KEY",
store: new MongoStore( mongooseConnection: mongoose.connection )
));
好的,我设置好了。如果我有
app.get("/login", function(req, res)
// If user authorized
// I want to define a session.user = req.body.user
// And then I want to read this value in other my site pages
);
我如何定义用户登录和其他一些会话数据?
如何读取这些值?
此会话将存储在 MongoDB 中的什么位置?或者我不仅需要定义 MYDATABASE 和 MYDATABASE/sessionstore 的方法吗?
我必须生成秘密还是必须是一个定义的字符串?
【问题讨论】:
【参考方案1】:会话的读取和写入是通过req.session
对象完成的:req.session.userId = req.body.userId
会话数据将存储在一个名为 sessions
的集合中,由
默认。
【讨论】:
我想我们想知道如何访问那些数据库存储的会话以上是关于如何在 connect-mongo 中使用会话?的主要内容,如果未能解决你的问题,请参考以下文章