Express 3.5.x版本仍然應該使用基於connect module的一些庫連接。
的cookieParser中間件
connect()
.use(connect.cookieParser('optional secret string'))
.use(function(req, res, next){
res.end(JSON.stringify(req.cookies));
})
的Nex有它在默認情況下,如果你想擴展您的應用程序中使用的Redis,Mongo的或任何其他數據庫存儲器使用的內存存儲,會話中間件:
connect()
.use(connect.cookieParser())
.use(connect.session({ secret: 'keyboard cat', key: 'sid', cookie: { secure: true }}))
閱讀有關connect會話中間件的更多信息,有兩條線可以回答您的問題。 (http://www.senchalabs.org/connect/session.html)
// backwards compatibility for signed cookies
// req.secret is passed from the cookie parser middleware
var secret = options.secret || req.secret;
// ensure secret is available or bail
if (!secret) throw new Error('`secret` option required for sessions');
祕密會話cookie用這個祕密簽名以防止篡改。所以基本上這些都是一樣的,但是當你添加會話支持時,請刪除cookieParser中的選項並僅使用會話中間件中的選項設置。
也請注意Express 4.x版本帶來了一些中間件更改!