2012-09-02 38 views
26

'da bir çerez değeri ayarla node.js ve express ile bir web sitesi geliştiriyorum. Bir çerez değerini nasıl ayarlayabilirim? Ekspres Connect üzerine inşa edilmiş olduğundanNode.js

cevap

34

, okumak cookieParser middleware ve req.cookies kullanabilir ve res.cookie() çerezleri yazmak için: Express 4.0, Connect will no longer be included with Express itibariyle

// configuration 
app.use(express.cookieParser()); 
// or `express.cookieParser('secret')` for signed cookies 

// routing 
app.get('/foo', function (req, res) { 
    res.cookie('bar', 'baz'); 
    // ... 
}); 

app.get('/bar', function (req, res) { 
    res.send(req.cookies.bar); 
}); 

[Güncelleme]

ve cookie-parser dahil olmak üzere varsayılan ara katman have been moved into their own packages.

+2

Ben aynı sorun var:

Sen o nasıl yapılacağına ilişkin ayrıntılı bilgi bulabilirsiniz. App.use (express.cookieParser()) 'i değiştirdiğimde; app.use ile (gerektirir ('connect'). cookieParser()); Set-Çerez vardır: currentId = b8RuviEVAytniu62; Yanıt Başlığında Ama req.cookies.currentId ile erişmeye çalıştığınızda undefined olsun. – Sysrq147

+1

'cookie-parser' aslında 'res.cookie()' – grabantot

5

Çerezlerinizi ayarlamak için ifade edilen yanıt nesnesini kullanabilirsiniz.

+2

BU için gerekli değildir! Kesinlikle bu! Meslektaşım, "ekspres oturum yazma cookie" araması yapmak için çok fazla zaman harcadı ve Express’in dokümanlarını geçmeye çalışmadılar. – hjpotter92