Javascript node.js不读取并返回简单的HTML文件

Javascript node.js不读取并返回简单的HTML文件,javascript,html,node.js,Javascript,Html,Node.js,我在node.js中创建了一个简单的filereader方法,它接收同一文件夹中的html文件。然而,当我尝试在本地主机上启动它时,我收到一条消息:抛出新类型错误 我的node.js文件是: var http = require('http'); var fs = require('fs'); http.createServer(function (req, res) { fs.readFile('demofile1.html', function(err, data) { res.

我在node.js中创建了一个简单的filereader方法,它接收同一文件夹中的html文件。然而,当我尝试在本地主机上启动它时,我收到一条消息:抛出新类型错误

我的node.js文件是:

var http = require('http');
var fs = require('fs');
http.createServer(function (req, res) {
  fs.readFile('demofile1.html', function(err, data) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write(data);
    res.end();
  });
}).listen(8080);
我的HTML代码也很简单:

<html>
<body>
<h1>My Header</h1>
<p>My paragraph.</p>
</body>
</html>

如果有人能提供一些见解,我们将不胜感激。我查看了Google和StackOverflow,没有解决方案解决了我的问题。其他节点程序,如输出Hello World或在我的本地主机上显示日期和时间。

很可能设置了错误,数据未定义。您应该始终首先检查错误。

您应该将错误{console.errorerr;}添加到readFile回调中,它可能是您提到的代码段中添加的一个路径问题,但没有任何更改。如果你还没有这样做,你能自己运行它看看会发生什么吗?你的代码没有问题,可能是文件名中的类型,因为我尝试了打字,重用结果和你的一样。你能告诉我如何定义数据吗?你没有。这是传递给回调函数的内容。检查错误没有帮助,但我确实思考了为什么数据会未定义,我意识到需要显式地描述文件路径,以便.js文件找到它。我假设,由于它们在同一个文件夹中,它已经知道它将位于何处。非常感谢。