【问题标题】:How to use sessions with connect-mongo?如何在 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 中的什么位置?或者我不仅需要定义 MYDATABASEMYDATABASE/sessionstore 的方法吗?

我必须生成秘密还是必须是一个定义的字符串?

【问题讨论】:

    标签: node.js mongodb session mongoose database


    【解决方案1】:
    1. 会话的读取和写入是通过req.session 对象完成的:req.session.userId = req.body.userId

    2. 会话数据将存储在一个名为 sessions 的集合中,由 默认。

    3. About the session secret

    【讨论】:

    • 我想我们想知道如何访问那些数据库存储的会话
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-05
    相关资源
    最近更新 更多