我最初使用的是節點v4.4.5,並且運行nodemon似乎工作正常。一旦我安裝了更新的版本,一切都破裂了。我不太清楚爲什麼我得到這個錯誤,因爲我只是試圖讓一個簡單的節點運行。TypeError:第一個參數必須是字符串或緩衝區
繼承人的守則。
var http = require('http');
var fs = require('fs');
var server = http.createServer(function (request, response){
console.log('client request URL: ', request.url);
if(request.url === '/') {
fs.readFile('index.html', 'utf8', function (errors, contents){
response.writeHead(200, {'Content-Type': 'text/html'});
response.write(contents);
response.end();
});
}
else {
response.writeHead(404);
response.end('File not found!!!');
}
});
server.listen(8000);
console.log("Running in localhost at port 8000");
您能否定義在哪條線上出現錯誤?這個問題的一個原因可能是'response.write'這一行,因爲'content'是未定義的。也許'fs.readFile'回調已收到一個錯誤(錯誤),你沒有檢查這些錯誤。 –
同意@MatteoRagni,導致錯誤的行號需要發佈。另外,這可能是一個讀取文件失敗的問題。 – shaochuancs
它沒有指定。它會在終端中運行,但是一旦我轉到網絡上的本地主機,它會得到該錯誤。 – Gkata