Pipe static files, don't read to buffer

This commit is contained in:
Connor Peet 2015-01-06 08:47:18 -05:00
parent e26cff3718
commit 160629db6b

View File

@ -20,18 +20,8 @@ function asset_request(req, res) {
var filename = __dirname + "/public/" + req.url.path_list.join("/"); var filename = __dirname + "/public/" + req.url.path_list.join("/");
fs.exists(filename, function(exists) { fs.exists(filename, function(exists) {
if (exists) { if (exists) {
fs.readFile(filename, function(err, file_buffer) { res.writeHead(200, { "Content-type" : mime.lookup(filename) });
if (err) { fs.createReadStream(filename).pipe(res);
res.writeHead(500, {"Content-type" : "text/plain"});
res.end("Internal Server Error");
} else {
res.writeHead(200, {
"Content-type" : mime.lookup(filename),
"Content-Length": file_buffer.length
});
res.end(file_buffer);
}
});
} else { } else {
res.writeHead(404, { res.writeHead(404, {
"Content-type" : "text/plain" "Content-type" : "text/plain"
@ -95,4 +85,4 @@ function requestHandler(req, res) {
http.createServer(requestHandler).listen(process.env.PORT || 3000); http.createServer(requestHandler).listen(process.env.PORT || 3000);
// cleaning worker // cleaning worker
setInterval(clean.run, config.cleaning_interval * 1000); setInterval(clean.run, config.cleaning_interval * 1000);