2016-04-07 18 views
3

Ich versuche, Cookies für meine Website mit node.js und express.js zu setzen. Heres eine vereinfachte Version von meinem Code:Cookies werden nicht in node.js gesetzt

var express = require('express'); 
var cookieParser = require('cookie-parser'); 

var app = express(); 
app.use(cookieParser()); 

app.post('/testCookies', function(req, res) { 
    console.log(req.cookies); //empty object 
    res.cookie('username', 'test'); 
    console.log(req.cookies); //still an empty object 

    res.end(); 
}); 

Ich versuchte zweimal bei POSTen die irgendwie Cookies nach der Anfrage (im nicht sehr vertraut mit Cookies noch) nicht gesetzt, sondern es ändert nichts. Die Konsole zeigt keine Fehler an.

+0

Ich bin nicht vertraut mit Ihrem Stapel, aber können Sie nicht einfach einen Cookie-Wert wie folgt setzen: req.cookies.test = "somestring"; ? –

+0

Gemäß [dieser stackoverflow Frage] (http://stackoverflow.com/questions/12240274/how-to-set-cookie-value-in-node-js) und [dieses blogpost] (https: //www.codementor .io/nodejs/tutorial/cookie-management-in-express-js) Sie müssen 'res.cookie (...)' –

+1

verwenden. Sehen Sie die Antwort von Alex, das ist was ich auch benutze. –

Antwort

1

Sie könnten stattdessen req.session() verwenden. Das würde Sie tun

req.session.username = "test"; 

die Dokumentation Siehe here.

+0

Ihre Lösung funktioniert wie erwartet, vielen Dank! –

Verwandte Themen