【问题标题】:Variable is incremented twice in node.js http callback function变量在 node.js http 回调函数中增加了两次
【发布时间】:2012-04-25 05:51:19
【问题描述】:

我在玩 node.js,当你运行这段代码时发生了一些奇怪的事情:

var http = require("http");
var i = 0;

function onRequest(request, response) {  
  response.writeHead(200, {"Content-Type": "text/plain"});
  response.write("You're number " + i++);
  response.end();
}

http.createServer(onRequest).listen(8888);

我希望它的行为类似于页面浏览量计数器,但每次刷新浏览器选项卡时,我都会得到似乎是 i=i+2 的结果,而不是简单的增量。有人可以向我解释这种行为吗?

【问题讨论】:

    标签: node.js callback increment


    【解决方案1】:

    您的浏览器也在访问您的服务器以获取favicon.ico。每个请求都会增加i,而对favicon.ico 的请求也会计数。

    使用FiddlerWireShark 等工具亲自查看此行为。

    【讨论】:

      【解决方案2】:

      我敢打赌,浏览器喜欢一遍又一遍地发送网站图标请求。

      【讨论】:

      • 谢谢!我以为它做了 2 个请求,但不知道为什么。 :D
      猜你喜欢
      • 2020-10-24
      • 2013-05-21
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      • 1970-01-01
      • 2012-05-31
      • 1970-01-01
      • 2023-04-10
      相关资源
      最近更新 更多