以下是文档中的示例Web服务器,并添加了一个计数器。当客户端/浏览器请求页面时,它将计数器打印到控制台。当页面加载时,Nodejs Web服务器调用requestListener两次
但是,浏览器请求时会调用两次。为什么?
这是我所期待会发生:
browser : Hello World 1
console : Counter 1
[reload page]
browser : Hello World 2
console : Counter 2
,但出现这种情况:
browser : Hello World 1
console : Counter 1
Counter 2
[reload page]
browser : Hello World 3
console : Counter 3
Counter 4
我使用命令行
$ node example.js
这里是代码运行代码:
var
http = require('http'),
counter = 0,
sys = require('util');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
counter++;
res.end('Hello World ' + counter + '\n');
sys.puts('Counter ' + counter);
}).listen(8000, "");
我第一次跑这我有类似的行为,但在随后的运行它的工作原理如预期。 – 2010-10-15 00:56:03
也许它是我如何运行它。我只是使用命令行'node example.js'。你如何运行它? – Garrows 2010-10-15 01:04:00
像你这样的命令行吧 – 2010-10-15 01:23:36