错误 - expressSessionMiddleware 不是函数
Error - expressSessionMiddleware is not a function
我正在尝试使用 express-socket.io-sessions 与用户的会话进行套接字,但是当我尝试添加中间件时,我一直收到此错误。这是我的代码:
var express = require('express');
var socket = require('socket.io');
var sharedSession = require("express-socket.io-session");
function main(req, res, server, session) {
res.sendFile(__dirname + "/views/find.html");
var io = socket(server);
io.use(sharedSession(session, {
autoSave: true
}));
}
当我 console.log 时,传递给主函数的所有参数似乎都是,所以我不认为是这样。任何关于为什么会发生此错误的帮助将不胜感激。谢谢
您还必须将中间件 session
放入 express 应用程序中,然后才能使用 sharedSession
中间件。
正确的方法
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));
参考官方文档 - https://www.npmjs.com/package/express-socket.io-session
我正在尝试使用 express-socket.io-sessions 与用户的会话进行套接字,但是当我尝试添加中间件时,我一直收到此错误。这是我的代码:
var express = require('express');
var socket = require('socket.io');
var sharedSession = require("express-socket.io-session");
function main(req, res, server, session) {
res.sendFile(__dirname + "/views/find.html");
var io = socket(server);
io.use(sharedSession(session, {
autoSave: true
}));
}
当我 console.log 时,传递给主函数的所有参数似乎都是,所以我不认为是这样。任何关于为什么会发生此错误的帮助将不胜感激。谢谢
您还必须将中间件 session
放入 express 应用程序中,然后才能使用 sharedSession
中间件。
正确的方法
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));
参考官方文档 - https://www.npmjs.com/package/express-socket.io-session