当我将其作为服务器运行时,转到localhost:8080'已保存!'在控制台中打印两次。还有蜜蜂'在mynewfile1.txt中附加两次为什么会这样?
var http = require('http');
var fs = require('fs');
http.createServer(function (req, res) {
res.writeHead(200, { 'Content-Type': 'text/html' });
res.write('Hello World!');
fs.readFile('head.html', function (err, data) {
res.write(data);
res.end();
});
fs.appendFile('mynewfile1.txt', 'Honey Bee', function (err) {
if (err) throw err;
console.log('Saved!');
});
}).listen(8080);
答案 0 :(得分:1)
这是因为您的浏览器makes an additional request
要抓取favicon.ico
。使用curl
发出单个HTTP请求:
curl http://localhost:8080
答案 1 :(得分:0)
如果在函数末尾放置一个return语句,它将不会运行多次。
content = "<p>This is content written to a file</p>";
file_name = "html/fs_test_file.html";
fs.appendFile(file_name, content,
(err) =>
{
if (err) throw err;
console.log("File created");
return;
});