2017-09-25 22 views
0

私はnodejs express-sessionおよびexpress-socket.io-sessionを使用しています。問題は、server.jsを実行すると、エラー:express-sessionおよびexpress-socket.io-session NodeJsを使用しているときのエラー

var express = require('express'); 
var session = require('express-session'); 
var io = require('socket.io').listen(http); 
var sharedsession = require("express-socket.io-session"); 
var app = express(); 

app.use(session({ 
    secret: 'ssshhhhh', 
    resave: true, 
    saveUninitialized: true 
})); 

io.use(sharedsession(session, { 
    resave: true, 
    secret: 'ssshhhhh', 
    saveUninitialized: true 
})); 

io.sockets.on('connection', function(socket){ 
    console.log(socket.handshake.session); 
}); 

私は私は私の問題で明らかにされている願っています:

express-session deprecated undefined resave option; provide resave option node_modules\express-socket.io-session\index.js:66:7 
express-session deprecated req.secret; provide secret option node_modules\express-socket.io-session\index.js:66:7 
express-session deprecated undefined saveUninitialized option; provide saveUninitialized option node_modules\express-socket.io-session\index.js:66:7 

ここでは、コードです。ありがとう

答えて

0

あなたの設定が正しく表示されない場合は、expressとsocket.ioの両方でセッションを共有できるようにセッションを定義します。

const session = require('express-session')({ 
    secret: 'ssshhhhh', 
    resave: true, 
    saveUninitialized: true 
}); 
const sharedsession = require('express-socket.io-session'); 
... 
app.use(session); 
io.use(sharedsession(session)); 
+0

@ireeqhz答えがまだ適用されます。設定済みのセッションをsocket.ioに渡さずに、セッションコンストラクタへの参照を渡します。 – James

関連する問題