我尝试在node.js的页面中放置一个html,这是代码:
var http = require('http');
var fs=require('fs');
fs.readFile('C:\Users\Eventi\Desktop\Node.js\Progetti\ProveNodeJS\NodeJSProve\home.html', function (err, html) {
if (err) {
}
http.createServer(function(request, response) {
response.writeHeader(200, {"Content-Type": "text/html"});
response.write(html);
response.end();
}).listen(8000);
});
当我访问网址http://localhost:8000
时,我收到错误first argument must be a string or Buffer node js
。有人可以帮帮我吗?
答案 0 :(得分:2)
原因是您的readFile()
失败并设置了err
(html
可能是undefined
)。在这种情况下,您应填写if (err) {}
块以执行有用的操作。
此外,出现错误的最可能原因是反斜杠未在文字文件名字符串中进行转义。所以相反,你需要:
'C:\\Users\\Eventi\\Desktop\\Node.js\\Progetti\\ProveNodeJS\\NodeJSProve\\home.html'
答案 1 :(得分:1)
逃离你的道路:
fs.readFile('C:\\Users\\Eventi\\Desktop\\Node.js\\Progetti\\ProveNodeJS\\NodeJSProve\\home.html', function (err, html) {
再试一次。