2013-01-11 22 views
4

檢查快速的文檔,我看到這樣的解決方案如下:如何在Express中處理所有請求作爲過濾器上下文?

app.all('/*', function(req, res) { 
    console.log('Intercepting requests...'); 
}); 

它真的攔截請求和控制檯輸出的消息上。問題是網站的執行過程並沒有停止,請求也沒有結束,似乎處於一種循環中。還有另一種方法來模擬Express上的過濾器,或者現在無法執行它?

謝謝!

回答

8

您必須添加next作爲參數傳遞給函數,然後裏面調用它,當你使用記錄進行

app.all('/*', function(req, res, next) { 
    console.log('Intercepting requests ...'); 
    next(); // call next() here to move on to next middleware/router 
}) 
+0

太感謝了,zeMirco。我從來沒有注意到next()函數。所以,關於綠色標誌我不知道它在哪裏。我如何檢查或標記它? – Ito

+0

我檢查了@JohnnyHK的評論,我做到了。泰! – Ito

+0

一切都好! express中的'next'參數是可選的。您可以擁有帶或不帶參數的中間件。 – zemirco

相關問題