Node.js 带有cookies的ExpressJS会话

Node.js 带有cookies的ExpressJS会话,node.js,session,cookies,express,Node.js,Session,Cookies,Express,我试图使用cookies建立一个用户会话,使用ExpressJS 4.2和cookier解析器,但我找到的所有文档都是针对ExpressJS 3.x或更早版本的 有人能给我指个方向吗 文档或代码片段将不胜感激 提前谢谢 ====== 我想使用PassportJS通过MongoDB对本地用户进行身份验证,除了这个路由之外,其他一切都可以正常工作(确保始终重定向到/,即使在MongoDB中找到了user/pass) // reusable middleware function ensureAuth

我试图使用cookies建立一个用户会话,使用ExpressJS 4.2和cookier解析器,但我找到的所有文档都是针对ExpressJS 3.x或更早版本的

有人能给我指个方向吗

文档或代码片段将不胜感激

提前谢谢

======

我想使用PassportJS通过MongoDB对本地用户进行身份验证,除了这个路由之外,其他一切都可以正常工作(确保始终重定向到/,即使在MongoDB中找到了user/pass)

// reusable middleware
function ensureAuthenticated(req,res,next) {
    if(req.isAuthenticated()) {return next();}
        res.redirect('/'); // if failed...
    }


router.get('/panel', ensureAuthenticated,function(req, res){

    res.render('panel', {obj: testArr});

});
这是因为ensureAuthenticated找不到活动cookies

我的app.js配置如下:

var express      = require('express');
var path         = require('path');
var favicon      = require('static-favicon');
var logger       = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser   = require('body-parser');
var passport     = require('passport')
var mongoose     = require('mongoose');
var flash        = require('connect-flash');


//Routes
//=====================================================================
var routes = require('./routes/index');
var admin  = require('./routes/admin');
var panel  = require('./routes/panel');



//Express configuration
//======================================================================
var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');

/*app.use(favicon());*/
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser('secret'));
app.use(flash());
app.use(passport.initialize());
app.use(passport.session());
app.use(express.static(path.join(__dirname, 'public')));

app.use('/', routes);
app.use('/', admin);
您需要使用初始化基于cookies的会话

var session = require('express-session');
//code
app.use(session({secret: 'keyboard cat'}));

你能确切地说明你想做什么吗?他们在上的文档与3.x几乎相同。是的,让我编辑原始问题。感谢我的回答:“快速会话”:“最新”,app.use(会话({secret:'keyboard cat'}));但问题仍然存在,我已登录,cookie已设置,但在passportjs初始化之前,我仍然从/panelinitialize获得304。我正在发送链接说明它对我的作用