/* 我是新手,写了一个小程序统计页面被访问的次数,但是发现一个奇怪的问题。 每次访问页面。sum都会输出两次,最后导致的结果就是第一次显示:你是第1个,刷新一下页面,显示:你是第3个,你是第5个... 我的问题是为什么一次访问似乎会触发两次request事件? 求大虾解惑~~ */ var http = require('http'); var server = http.createServer(); server.listen(3333, "127.0.0.1"); var sum = 0; var data = ""; server.on("request", function(request, response) { data = "你是第 " + (++sum) + "个."; console.log(sum); response.writeHead(200, { 'Content-Type': 'text/html;charset=utf-8', 'Content-Length': Buffer.byteLength(data) }); response.write(data , "utf8"); response.end(); });
回复 (8)
H
M
H
M
ico 事件
H
H
favicon.ico是浏览器默认请求的,用来显示网站的图标,判断url不等于/favicon.ico就行了
H
引用 xiuxu123在方法内部加上这句代码你就明白了: 因为你每次刷新你的浏览器会有两个请求过去,
@xiuxu123 嗯,显示第一次的request.url是/,第二次是/favicon.ico。但还是有点困惑,哈哈~
X
在方法内部加上这句代码你就明白了:
console.log(request.url);
因为你每次刷新你的浏览器会有两个请求过去,
参与回复
登录后即可参与回复。登录