中間件是Django請求/響應處理的鉤子框架。這是一個輕量級的低級“插件”系統,用於在全球範圍內改變Django的輸入或輸出。
每個中間件組件都負責完成一些特定的功能。例如,Django包含一箇中間件組件 AuthenticationMiddleware,它使用會話將用戶與請求相關聯。
內置的例如:CSRF,SESSION,
掛鉤和應用程序¶
在請求階段,在調用視圖之前,Django按照自定義的順序MIDDLEWARE_CLASSES自上而下地應用中間件。兩個鉤子可用:
process_request()
process_view()
在響應階段,在調用視圖之後,中間件從下往上以相反的順序應用。三個掛鉤可供選擇:
process_exception() (只有當視圖引發異常時)
process_template_response() (僅適用於模板響應)
process_response()