2013-09-30 23 views
5

任何人都可以解釋,選擇使用鉤子來實現身份驗證或緩存等功能時,是否有任何顯着的優點或缺點,而不是使用中間件?例如 - 我可以通過通過自定義中間件獲取請求對象並設置應用程序語言變量來實現翻譯功能,該應用程序語言變量可用於在應用程序執行時加載正確的翻譯文件。或者我可以在路由前添加一個鉤子並讀取請求變量,然後在應用程序執行期間加載正確的文件。 是否有任何明顯的原因讓我錯過了讓一個選擇比另一個更好的選擇?鉤子與2.0中的瘦客戶端中間件

回答

2

據我所說,middleware是完美的每個路由工作。並且hooks最適合在整個應用程序中執行任何操作。對於你的情況,我認爲應該比中間件使用hooks更好。

+2

感謝您的回覆,您能否擴展爲什麼中間件更適合路由特定操作?我認爲路由中間件是針對路由的特定流程,而應用中間件是針對整個應用的操作?我能看到的唯一的區別在於,可以在調度過程中的特定點觸發鉤子,但在我看來,「before」鉤子與應用程序中間件功能完全相同。 –