Как использовать MongoStore с сессией Socket? - PullRequest
0 голосов
/ 29 ноября 2018

Согласно документации, обычный способ реализации express-socket.io-session :

var app = require('express')(),
server  = require("http").createServer(app),
io = require("socket.io")(server),
session = require("express-session")({
    secret: "my-secret",
    resave: true,
    saveUninitialized: true
}),
sharedsession = require("express-socket.io-session");

// Attach session
app.use(session);

// Share session with io sockets
io.use(sharedsession(session));

И обычный способ реализации connect-mongostore is:

var express = require('express');
var session = require('express-session');
var MongoStore = require('connect-mongostore')(session);
var app = express();

app.use(session({
    secret: 'my secret',
    store: new MongoStore({'db': 'sessions'})
}));

Если я хочу использовать сеансы Socket, мне нужно настроить сеанс Express непосредственно в инициализации переменной, а не в промежуточном программном обеспечениив противном случае я получаю предупреждения вроде:

express-session deprecated undefined resave option; provide resave option app.js:62:9
express-session deprecated undefined saveUninitialized option; provide saveUninitialized option app.js:62:9
express-session deprecated req.secret; provide secret option app.js:62:9

Однако я не могу реализовать MongoStore в тот момент, так как сама переменная сеанса должна быть передана при инициализации объекта MongoStore.

Любая идея, как я могу использовать express-session , express-socket.io-session и connect-mongostore в одном приложении?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...