以下代碼向瀏覽器輸出index.html的內容(它只包含文本hello world)。但是,當我用readFileSync替換readFile時,請求超時。我錯過了什麼?是否需要另一種緩衝區?我使用節點0.61和2.4表示readFile和readFileSync之間的區別
var express = require('express');
var fs = require('fs');
var app = express.createServer(express.logger());
app.get('/', function(request, response) {
fs.readFile('index.html', function(err, data){
response.send(data.toString());
});
});
var port = process.env.PORT || 5000;
app.listen(port, function() {
console.log("Listening on " + port);
});
你不是叫'.END()'當你完成發送?我使用NodeJS已經有一段時間了。 –
當我用readFileSync替換readFile時,你是什麼意思?第一個需要回撥,而另一個則不需要。代碼應該是'var data = fs.readFileSync('index.html');'。回調從不被調用,因爲'readFileSync'不使用它。這就是超時來自的地方。假設我理解正確。 – freakish
@CrazyTrain他使用Express。它爲你做到了。 – freakish