首页 > 解决方案 > 关于 http-server 与在 NodeJS 中使用 http 的混淆

问题描述

我正在尝试使用 NodeJS 运行一个 html 文件。我安装了一个名为“http-server”的命令行节点包。当我使用 http-server 运行 html 文件时,它打开得很好。

当我尝试使用 NodeJS 的 html 库托管相同的 html 文件时,我开始出现问题。我尝试使用下面的代码运行我的 html 文件,但它没有像我预期的那样工作。该网页只是一个空白的白色页面。

为什么是这样?http-server 包做了哪些我的常规代码没有做的事情?

感谢您提前提供任何帮助!

var http = require('http');
var fs = require('fs');

var html = fs.readFileSync('index.html');

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/html'});
  res.end(html);
}).listen(8000);

标签: htmlnode.jshttphttpserver

解决方案


替换fs.readFileSync('index.html');fs.readFileSync(__dirname + '/index.html');(__dirname 是项目所在的目录)


推荐阅读