title: How do I set a MIME type before sending a file in Node.js?
body: <p>When sending scripts from my Node.js server to the browser, in Google Chrome, I get this warning:</p>
  
  <blockquote>
    <p>Resource interpreted as Script but transferred with MIME type
    text/plain</p>
  </blockquote>
  
  <p>I Google'd around, and found out that it's a server-side problem, namely, I think that I should set the correct MIME type to things, before sending them. Here's the HTTP server's handler:</p>
  
  <pre><code>var handler = function(req, res)
  {
      url = convertURL(req.url); //I implemented "virtual directories", ignore this.
  
      if (okURL(url)) //If it isn't forbidden (e.g. forbidden/passwd.txt)
      {
          fs.readFile (url, function(err, data)
          {
              if (err)
              {
                  res.writeHead(404);
                  return res.end("File not found.");
              }
  
              //I think that I need something here.
              res.writeHead(200);
              res.end(data);
          });
      }
      else //The user is requesting an out-of-bounds file.
      {
          res.writeHead(403);
          return res.end("Forbidden.");
      }
  }
  </code></pre>
  
  <p>Question: <strong>How do I correct my server-side code to configure the MIME type correctly?</strong></p>
  
  <p>(Note: I already found <a href="https://github.com/broofa/node-mime">https://github.com/broofa/node-mime</a>, but it only lets me determine the MIME type, not to "set" it.)</p>