Javascript NodeJS服务器为每个请求增加两个变量

Javascript NodeJS服务器为每个请求增加两个变量,javascript,node.js,Javascript,Node.js,当运行这段代码时,i每次递增2,我无法在文档中找到原因,或者其他原因。我希望每个请求的增量为1,但事实并非如此。为什么会这样 var http = require('http'); var i = 0; http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Number: ' + i + '\n'); i++; }).listen(800

当运行这段代码时,
i
每次递增2,我无法在文档中找到原因,或者其他原因。我希望每个请求的增量为1,但事实并非如此。为什么会这样

var http = require('http');
var i = 0;
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Number: ' + i + '\n');
  i++;
}).listen(8000, '127.0.0.1');
console.log(请求url)

您会注意到URL是
/
/favicon.ico


浏览器喜欢为您向favicon.ico发出请求。这就是为什么您会收到2个请求。

这可能是由于Chrome中的一个bug,请参见以下答案:@LukeGirvin-Yup,Chrome。第一次只能增加两个,之后每次都是一个增量。我没有想到favicon的问题。哦,我第一次进入Node.js时也注意到了这个问题。谢谢你的回答,雷诺斯@雷诺斯,我这里也有同样的问题+Firefox为1,Chrome为+2。谢谢天哪,为什么我一直在寻找你对我问题的答案!显然,Chrome并没有在显影->网络中显示favicon请求,这是误导。只是确认一下,你们在使用Chrome吗?你试过其他浏览器吗?我怀疑这不会发生在Firefox中(例如),请参阅我对Raynos答案的评论。