title: Node.js - Resource interpreted as Script but transferred with MIME type text/plain
body: <p>First off: I'm not using Express. </p>
  
  <p>With that out of the way, when I load my <code>index.html</code> file it recursively <code>readFile</code> every attached file such as my CSS and JS pages. But it always returns this error in my inspector (Chrome):</p>
  
  <blockquote>
    <p>Resource interpreted as Script but transferred with MIME type text/plain</p>
  </blockquote>
  
  <p>I have absolutely no idea why it is doing this. Here is my code:</p>
  
  <pre><code>var http = require('http');
  var querystring = require('querystring');
  var fs = require('fs');
  var url = require('url');
  
  function route(handle, pathname, response, request){
  console.log("About to route a request for " + pathname);
  
  if (typeof handle[pathname] === "function"){        
      handle[pathname](response, request);
      } else {
  
      var file_path = "";
  
      // parses the url request for a file and pulls the pathname
      var url_request = url.parse(request.url).pathname;      
      var tmp  = url_request.lastIndexOf(".");
      var extension  = url_request.substring((tmp + 1));
  
      file_path = url_request.replace("/", "");
  
      //load needed pages and static files
      fs.readFile(file_path, function (error, contents){
          if(error){
            console.log('DIE!');
            console.log(error);
            response.writeHeader(500, {"Content-Type": "text/html"});  
            response.end("&lt;h1&gt;FS READ FILE ERROR: Internal Server Error!&lt;/h1&gt;");    
          }
          else{ 
            console.log('SUCCESS!');
            // set content type
            if (extension === 'html') response.writeHeader(200, {"Content-Type": 'text/html'});
            else if (extension === 'htm') response.writeHeader(200, {"Content-Type": 'text/html'});
            else if (extension === 'css') response.writeHeader(200, {"Content-Type": 'text/css'});
            else if (extension === 'js') response.writeHeader(200, {"Content-Type": 'text/javascript'});
            else if (extension === 'png') response.writeHeader(200, {"Content-Type": 'image/png'});
            else if (extension === 'jpg') response.writeHeader(200, {"Content-Type": 'image/jpg'});
            else if (extension === 'jpeg') response.writeHeader(200, {"Content-Type": 'image/jpeg'});
            else { console.log("NO CORRECT EXTENSION")};
              console.log(extension);
              response.end(contents);
          }
  
          response.end();  
      });
      response.end();
  }
  }
  
  exports.route = route;
  </code></pre>
  
  <p>How can I fix this? This has stopped my project in its tracks.</p>
  
  <p>Note: this is a progression of an earlier problem I had talked about here: <a href="https://stackoverflow.com/questions/18004512/node-js-incorrect-path-problems/18004553?noredirect=1#comment26330812_18004553">Node.js incorrect path problems</a></p>