Django4.0 中間件-中間件的順序與分層

2022-03-16 17:59 更新

在請(qǐng)求階段,在調(diào)用視圖之前,Django 按照定義的順序應(yīng)用中間件 ?MIDDLEWARE?,自頂向下。

你可以把它想象成一個(gè)洋蔥:每個(gè)中間件類都是一個(gè)“層”,它覆蓋了洋蔥的核心。如果請(qǐng)求通過(guò)洋蔥的所有層(每一個(gè)調(diào)用 ?get_response ?)以將請(qǐng)求傳遞到下一層,一直到內(nèi)核的視圖,那么響應(yīng)將在返回的過(guò)程中通過(guò)每個(gè)層(以相反的順序)。

如果其中一層決定停止并返回響應(yīng)而不調(diào)用?get_response?,那么該層(包括視圖)中的洋蔥層都不會(huì)看到請(qǐng)求或響應(yīng)。響應(yīng)將只通過(guò)請(qǐng)求傳入的相同層返回。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)