El código siguiente muestra el uso de cookies del lado del servidor, aquí hay un servidor de la API de demostración que analizan las cookies de un cliente HTTP y comprobar el hash de las cookies:
var express = require("express"),
app = express(),
hbs = require('hbs'),
mongoose = require('mongoose'),
port = parseInt(process.env.PORT, 10) || 4568;
app.configure(function() {
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.static(__dirname + '/public_api'));
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.get('/api', function (req, res) {
var cookies = {};
req.headers.cookie && req.headers.cookie.split(';').forEach(function(cookie) {
var parts = cookie.split('=');
cookies[ parts[ 0 ].trim() ] = (parts[ 1 ] || '').trim();
});
if (!cookies['testcookie']) {
console.log('First request');
res.cookie('testcookie','testvaluecookie',{ maxAge: 900000, httpOnly: true });
res.end('FirstRequest');
} else {
console.log(cookies['testcookie']);
res.end(cookies['testcookie']);
}
});
app.listen(port);
en el lado del cliente, simplemente hacer una petición normal a la API del servidor anterior, estoy usando el módulo de petición, que por defecto las transferencias de galletas para cada solicitud.
request(options, function(err, response, body) {
console.log(util.inspect(response.headers));
res.render("index.html", {layout: false,user: {
username: req.session.user + body
}});
});
Si no es difícil, ¿quizás podría proporcionar un fragmento de ejemplo en la respuesta? –