Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Set a cookie value in Node.js

I'm developing a website with node.js and express. How can I set a cookie value?

like image 466
Javier Manzano Avatar asked Sep 02 '12 22:09

Javier Manzano


People also ask

How do I fetch cookies in node js?

Another route is /getcookie which is used to get all the cookies and show them on the webpage. At the end of the code, we are listening to 3000 port for our server to be able to run. This will run the server as shown in the image above. We can check cookies by visiting localhost:3000/setcookie.

How do you set cookies?

Cookies are usually set by a web-server using the response Set-Cookie HTTP-header. Then, the browser automatically adds them to (almost) every request to the same domain using the Cookie HTTP-header.


2 Answers

You could just use the response object that express provides to set your cookies.

You can find detailed information on how to do that at: http://expressjs.com/en/api.html#res.cookie

like image 42
MT. Avatar answered Sep 19 '22 15:09

MT.


As Express is built on Connect, you can use the cookieParser middleware and req.cookies to read and res.cookie() to write cookies:

// 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); }); 

[Update]

As of Express 4.0, Connect will no longer be included with Express and the default middleware have been moved into their own packages, including cookie-parser.

like image 79
Jonathan Lonowski Avatar answered Sep 17 '22 15:09

Jonathan Lonowski