2012-05-08 32 views
1

我想我理解WSGI規範。所以我正在研究這個Django模塊https://github.com/django/django/blob/master/django/middleware/locale.py,我只是沒有看到它是如何實現一個wsgi中間件的,因爲pep0333解釋了它。這是一個wsgi中間件以什麼方式?

我的某處期待的簽名,如

def __call__(self, environ, start_response) 

,以及一個小程序會調用其他應用程序和處理其返回值。

有人可以解釋服務器位和應用程序在這個中間件的位置?

回答

2

Django中間件與你的想法有些不同。它位於django棧的內部。通過django中間件,您可以訪問用戶製作/接收的請求和響應的每個步驟。

https://docs.djangoproject.com/en/dev/topics/http/middleware/?from=olddocs

這只是需要的Django內發生。 WSGI負責處理請求並返回響應,但Django給你鉤子來修改它,一旦它到達Django。

+0

謝謝你的澄清。 –

相關問題