I think you just reinvented node.js core function named `domain.intercept`. :)
16.09.2014, 01:34, "Alexey Petrushin" <alexey.petrus...@gmail.com>:
--I wrote short article http://jslang.info/blog/2014/escape-from-callback-hellabout simple approach that turn thisvar printCommentsForUser = function(login, password, cb){authenticateUser(login, password, function(err, user){if(err) return cb(err)getComments(user.id, function(err, comments){if(err) return cb(err)renderComments(user, comments, cb)})})}Into thisvar printCommentsForUserWithFork = function(login, password, ecb, cb){authenticateUser(login, password, ecb, function(user){getComments(user.id, ecb, function(comments){renderComments(user, comments, ecb, cb)})})}Or thisvar printCommentsForUserWithTwoCallbacks = function(login, password, ecb, cb){authenticateUser(login, password, ecb, function(user){getComments(user.id, ecb, function(comments){renderComments(user, comments, ecb, cb)})})}
On Monday, 15 September 2014 20:28:28 UTC+4, Ingwie Phoenix wrote:Hai, everyone.
So I just figured out that Connect’s static file servers dont work well with symlinks…so I had tow rite myself a little workaround, a fallback router, per-se. But whilst I did so, I had a nice meeting with the callback hell. Here’s my code:
CDN.use(config.CDN.baseUrl, function(req, res, next){
if(err) { next(); throw err; }
fs.lstat(config.base+"/cdn"+req.url, function(err,stats){
if(stats.isSymbolicLink()) {
fs.readlink(config.base+"/cdn"+req.url, function(err, linkstr){
if(err) throw err;
log.info("Redirecting request \""+req.url+"\" to \""+linkstr);
fs.readFile(linkstr, function(err, data){
if(err) throw err;
res.writeHead(200,{"Content-type":"text/html"});
res.end(data);
});
});
}
});
});
});
Okay…thats lots. And how does one get around this and into a bit of nicer code? It almost looks like a little pyramid there…
Kind regards, Ingwie.--
Job board: http://jobs.nodejs.org/
New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
---
You received this message because you are subscribed to the Google Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com.
To post to this group, send email to nodejs@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/32603590-e433-43a9-860a-8c12fdbac3f9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Job board: http://jobs.nodejs.org/
New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
---
You received this message because you are subscribed to the Google Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com.
To post to this group, send email to nodejs@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/840691410826553%40web28o.yandex.ru.
For more options, visit https://groups.google.com/d/optout.