5.2、django之中間件

5.2.1介紹

中間件類似於flask裏面的請求鉤子,用於監聽請求和響應的整個過程

5.2.2中間件的定義和使用

定義一箇中間件工廠函數,然後返回一個可以被調用的中間件。

中間件工廠函數需要接收一個可以調用的get_response對象。

返回的中間件也是一個可以被調用的對象,並且像視圖一樣需要接收一個request對象參數,返回一個response對象。

def simple_middleware(get_response):
    # 此處編寫的代碼僅在Django第一次配置和初始化的時候執行一次。

    def middleware(request):
        # 此處編寫的代碼會在每個請求處理視圖前被調用。

        response = get_response(request)

        # 此處編寫的代碼會在每個請求處理視圖之後被調用。

        return response

    return middleware

定義好中間件後,需要在settings.py 文件中添加註冊中間件

5.2.3多箇中間件的執行順序

  • 在請求視圖被處理前,中間件由上至下依次執行
  • 在請求視圖被處理後,中間件由下至上依次執行

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章