2015-11-10 51 views
0

我已經Node.js的幫助像創建一個服務器:Node.js創建的服務器在第一次頁面加載時發出3次請求,每次頁面刷新後發出2次請求?

var http = require('http'); //http comes build into the node 

var server = http.createServer(function(request, response){ 
console.log('got a request!'); 
response.write('Hello sanjit!'); 
response.end(); 
}); 
server.listen(3000); 

我從命令來運行我的服務器推動,如:

c:\nodejs\node module1 

是的NodeJS我的主文件夾,一切謊言。 module1是那個有我的代碼的文件。現在要知道它在每個頁面加載都可以正常工作,但一次只能有1個請求,但我不知道爲什麼在我第一次加載localhost:3000時,它提供了2個請求,因爲它記錄了got a request

我知道的東西是不對的存在。我的意思是如果我走了正確的路,那麼我會在第一次加載localhost:3000時看到1次請求,然後在每次單頁加載時也發出1次請求。這不會發生在我身上,我感到困惑。

我正在使用Chrome。

再次我想說,在我運行我的服務器後,我在第一次加載localhost:3000時獲得了2個請求,之後在Chrome上每載入一個頁面都發出2次請求。

在Firefox中,事情並沒有什麼不同。在第一次加載localhost:3000時,我得到了2個請求,之後在每個單頁加載中工作正常,每次加載頁面時我只收到1個請求。

可能是什麼問題?
如何在一個頁面加載請求1個請求?

+0

請不要使用語法'highlighting'的文本,是不是代碼。 – Cerbrus

+0

好的,對不起兄弟,我怎麼才能指出重要的話呢? –

+1

_Cursive_或__bold__('_Cursive_或__bold__')。但是,____使用它____。沒有人喜歡閱讀四分之一的文字粗體的文字。 – Cerbrus

回答

1

這是打算的行爲。瀏覽器默認會執行多個請求。

第二請求通常是一個的favicon.ico請求。您可以登錄該網址使用console.log(request.url);

要使其工作,你想要它,你會希望有一個路由器的工作叫。 This可能是您的選擇之一。然後,您擁有瀏覽器請求的所有網址的所有控件。

+0

好的兄弟我越來越favicon.ico你能解釋更多的一些工作代碼沒有得到favicon.ico –

+1

我已經有了。您需要使用路由器來過濾所有請求,並只抓取您需要的。我提供的鏈接顯示了一個非常基本的方法來獲取您最有可能需要的「/」網址。 – Andrius

+0

感謝兄弟爲我工作。我檢查了你的鏈接,並添加了兩個包'router'和'finalhandler',它做了我想要的。 –

1

當您訪問鉻頁面。

它會嘗試讓/favecon.ico。

,你將有兩個要求

/ 
/favecon.ico 
相關問題