亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

一次請求為什么createserver的毀掉函數中打印兩次?

http.createServer(function (request, response) {

response.writeHead(200, {'Content-Type': 'text/plain'});

response.end('Hello China\n');

console.log('向客戶端發送信息');

}).listen(8888);

上面的代碼:當訪問請求時,會打印兩次“向客戶端發送信息”

正在回答

2 回答

謝謝了,在http://cnodejs.org/topic/518772806d38277306804020找到解釋了,并且也驗證通過了;

var http=require('http');var i=0;var req=function(req,res){

i=i+1;
console.log(i,req.url);
res.writeHead(200,{'Content-Type':'text/plain'});
res.end('Hello World\n');};http.createServer(req).listen(8888,"127.0.0.1");console.log('Server running...');

這時輸出為:?

Server running…?

1:/?

2:/favicon.ico

我們發現favicon也被當做是一次請求,故被執行了兩次,另外有意思的地方就是把res.end(‘Hello World\n’);注釋或刪除,console.log(i)就不會被執行兩次了。


0 回復 有任何疑惑可以回復我~

request時,執行一次,服務返回response又被執行一次。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
進擊Node.js基礎(一)
  • 參與學習       219329    人
  • 解答問題       982    個

本視頻教程帶你揭開Node.js的面紗,帶你走進一個全新世界

進入課程

一次請求為什么createserver的毀掉函數中打印兩次?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號