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 [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/AA9F0C8A-93DF-4797-9270-941CFDA759CE%40googlemail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to