我有一个中间件来使用socket.io并一起表达。
io.use(function(socket, next) {
sessionMiddleWare(socket.request, socket.request.res, next);
});
我通过socket.io发送实时通知,并且进展顺利。但是在使用socket.io之后,当我重定向到另一个页面时,我失去了会话,特别是对于所有客户端来说,会话都是相同的。在我不使用socket.io之前一切都很顺利。即使我重定向到另一个页面,我也不会丢失会话。为什么我在使用socket.io后会丢失会话?请帮帮我。
答案 0 :(得分:0)
const app = require('express')();
const sharedsession = require('express-socket.io-session');
const server = require('http').createServer(app);
const io = require('socket.io')(server);
const session = require('express-session')({
secret: 'my-secret',
resave: true,
saveUninitialized: true
});
// Share session with io sockets
io.use(sharedsession(session));