在使用express-socket.io-session时,不推荐使用express-session选项,为什么会出现这种情况?

所以我正在使用express-socket.io-session模块,并试图在我的代码中复制文档中所述的示例。 但是,在这样做的时候,我一直遇到这些警告:

express-session deprecated undefined resave option; express-session deprecated undefined saveUninitialized option; express-session deprecated req.secret; 

我的express版本是4.13.4,socket.io是1.4.5,根据文档支持。 我不知道为什么它一直说废弃。

这是我如何初始化我的快速会议和express-socket.io会话:

 var expressSession = require('express-session'); var sharedSession = require('express-socket.io-session'); app.use(expressSession({secret:'surfsocial2016', resave: true, saveUninitialized: true }) ); io.use(sharedSession(expressSession,{autoSave:true})); 

以下是我的套接字代码:

 io.on('connection', function(socket){ console.log(socket.handshake.session.room); socket.on('send message', function(data){ console.log(data["message"]); io.emit('new message', data["message"]); }); }); 

我的“发送消息”事件不起作用,因为每当我从客户端发出的东西时,没有发生。 我认为这是因为被弃用的警告。 一切正常,如果我删除io.use(sharedSession(expressSession,{autoSave:true})); 这就是为什么我怀疑这个问题是与那些被弃用的警告有关。

我初始化variables是否错误?