使用Node.js作为简单的Web服务器

51 浏览
0 Comments

使用Node.js作为简单的Web服务器

我想运行一个非常简单的HTTP服务器。每个对example.com的GET请求都应该得到index.html作为一个常规的HTML页面(即,与阅读普通网页相同的体验)。

使用下面的代码,我可以读取index.html的内容。如何将index.html作为常规的网页服务?

var http = require('http');
var fs = require('fs');
var index = fs.readFileSync('index.html');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end(index);
}).listen(9615);


下面的一个建议很复杂,需要我为每个资源(CSS、JavaScript、图像)文件编写一个get行才能使用。

如何用一张HTML页面,包含一些图像、CSS和JavaScript来服务?

admin 更改状态以发布 2023年5月22日
0
0 Comments

注意:这个回答是从 2011 年的。但是,它仍然有效。

你可以使用 ConnectServeStatic 来在 Node.js 中实现这个功能:

  1. 使用 NPM 安装 Connect 和 ServeStatic

     $ npm install connect serve-static
    

  2. 创建 server.js 文件,内容如下:

     var connect = require('connect');
     var serveStatic = require('serve-static');
     connect()
         .use(serveStatic(__dirname))
         .listen(8080, () => console.log('Server running on 8080...'));
    

  3. 在 Node.js 中运行

     $ node server.js
    

现在你可以访问 http://localhost:8080/yourfile.html

0