mongo
小智 10
我在我的代码中遇到了同样的问题并使用这个解决了它:
const MongoDbStore = require('connect-mongo');从 require 语句中删除 (session) 并像这样更新 app.use():
// Session Configapp.use( session({ secret: 'story book', resave: false, saveUninitialized: false, store: MongoDbStore.create({ mongoUrl: YourDatabaseURL }) }));小智 5
我也遵循同样的方法,所以我发现了一个 npm pakage connect-mongodb-session。安装它并使用与布拉德在他的视频中使用的相同的会话代码
const MongoDBStore = require('connect-mongodb-session')(session);//sessionsapp.use(session({ secret: 'keyboard cat', resave: false, saveUnitialized: false, store: new MongoDBStore({ mongooseConnection: mongoose.connection }) //cookie: { secure: true }}))const store = new MongoStore({ uri: 'your mongo uri' , collection:'mySessions'})//express middlewareapp.use(session({ secret: 'keyboard cat', resave: false, saveUninitialized: false, store: store// Don't create a session until something is stored // cookie: { secure: true } - this wont work without https}))它也解决了我的重新登录问题。如果您关闭选项卡并租用本地主机,您已经登录了
abe*_*ier 5
connect-mongo v4 引入了新的签名(与 v3 相比)。
这是官方迁移指南。
此外,这里是我在特定项目中(使用mongoose和dotenv)从connect-mongov3升级到 v4所做更改的快速差异:
mongo