Open samuelbodin opened 6 years ago
var createNamespace = require('continuation-local-storage').createNamespace;
var session = createNamespace('some namespace');
var http = require('http');
http.createServer(function (req, res) {
session.bindEmitter(req);
session.bindEmitter(res);
// Call foo without passing in req and res.
foo();
function foo() {
console.log(req, res);
}
}).listen(8000);
like this?
bindEmitter
only ensures continuation through event emitters. It doesn't expose anything to the context.
What you need is to do something like session.set('request', req)
and then session.get('request')
later.
From the examples it's not entirely clear to me how I can access data that I pass to the
bindEmitter()
function. In the code below I use thecreateServer
from thehttp
module. Now my question is, how can I save the request and response objects to later access them from myfoo
function?