以下是文檔中的示例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