我正在尝试使用 readFileSync() 将 html 文件的内容显示到节点 js 文件中。但我得到这个错误:
Error: ENOENT, no such file or directory 'index.html'
at Object.fs.openSync (fs.js:427:18)
at Object.fs.readFileSync (fs.js:284:15)
at port (/app/web.js:6:22)
at callbacks (/app/node_modules/express/lib/router/index.js:161:37)
at param (/app/node_modules/express/lib/router/index.js:135:11)
at pass (/app/node_modules/express/lib/router/index.js:142:5)
at Router._dispatch (/app/node_modules/express/lib/router/index.js:170:5)
at Object.router (/app/node_modules/express/lib/router/index.js:33:10)
at next (/app/node_modules/express/node_modules/connect/lib/proto.js:190:15)
at Object.expressInit [as handle] (/app/node_modules/express/lib/middleware.js:30:5)
这是我的 web.js 文件:
var express = require('express');
var app = express.createServer(express.logger());
var fs=require('fs');
app.get('/', function(request, response) {
// response.send('Hello World2 !');
response.send(fs.readFileSync('index.html').toString());
});
var port = process.env.PORT || 5000;
app.listen(port, function() {
console.log("Listening on " + port);
});
“web.js”文件和“index.html”在我的github存储库中,地址如下:
https://github.com/myUsername/bitstarter/blob/master/node-js-sample/web.js
https://github.com/myUsername/bitstarter/blob/master/node-js-sample/index.html
我尝试了不同的路径来解决“index.html”,但都没有奏效,例如
/bitstarter/blob/master/node-js-sample/index.html
/node-js-sample/index.html
/bitstarter/node-js-sample/index.html
./index.html
!我正在使用 AWS EC2 ubuntun 12-4。我已经为这个错误苦苦挣扎了好几个小时!非常感谢任何帮助。