Redisでセッションを設定しようとしています。私はドックコンテナに私のレディスDBを持っていて、私のアプリにリンクしています(ドックコンテナ内にもあります)。私はセッションを未定義にし続けています。私は最小限のものに戻って物事を取り除き、物事が実行される順序もチェックしました。私はまだ定義されていません。Express.jsセッションが未定義です。 Redis
私はここでは'session' is undefined when using express/redis for session storeとExpress js session undefinedを読んだことがありません。
私は、cookie-parserを使用する必要はありません。なぜなら、expression-sessionにはCookieが含まれており、cookie-parserはexpression-sessionに問題を引き起こす可能性があるということです。
var express = require('express');
var session = require('express-session');
var redisStore = require('connect-redis')(session);
var bodyParser = require('body-parser');
var app = express();
app.set('port', (process.env.PORT || 5000));
var redisURL = 'redis://xxxxx:[email protected]:6379';
var store = new redisStore({ url: redisURL });
app.use(session({
secret: 'ssshhhhh',
store: store,
saveUninitialized: true,
resave: true
}));
app.use(express.static(__dirname + '/public'));
app.use(bodyParser.json()); // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({ // to support URL-encoded bodies
extended: true
}));
app.get('/', function(req, res, next) {
console.log(req.session); // Logs Undefined
res.send('Hello');
});
エラー番号と正確なエラーメッセージは何ですか。 –
@JasonLivesay console.logsは未定義です。セッションは未定義です。ありがとう – Rob
app.get( '/'、function(req、res、next){ console.log(req.session); //未定義のログ res.send( 'Hello'); }); – Rob