Browse Source

Pipe static files, don't read to buffer

Connor Peet 10 years ago
parent
commit
160629db6b
1 changed files with 3 additions and 13 deletions
  1. 3 13
      server.js

+ 3 - 13
server.js

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