1、概念:中介軟體是乙個鉤子框架,在django中,在發起請求和響應資料的過程中,針對業務處理過程中的切面進行提取,用於在全域性修改django的輸入輸出。
2、點:django中,有四個切入點:
1)、在瀏覽器到路由分發之前切入:
process_request(self,request)
2)、路由分發到呼叫檢視函式之前切入:
process_view(self,request,view_func,view_args,view_kwargs)
3)、在呼叫檢視函式到模板渲染之前切入:
process_template_response(self,request,response)
4)、在所有響應返回瀏覽器之前切入:
process_response(self,request,response)
5)、檢視出錯呼叫:
process_excetpion(self,request,excetpion)
3、自定義中介軟體:
1)、繼承 middlewaremixin:
2)、重寫上面五個函式:
4、中介軟體執行流程:
1)、瀏覽器傳送請求
2)、django**,產生request物件
3)、呼叫中介軟體類中的process_request
4)、url的匹配(dispatch進行路由分發,找對應的檢視)
5)、呼叫中介軟體類中的process_view
6)、呼叫自己的檢視view
7)、呼叫中介軟體類中的process_response
8)、process_response 將響應內容返回給瀏覽器
21 中介軟體
一 中介軟體的定義 1.中介軟體是django請求 響應處理的鉤子框架,它是乙個輕量級的 低階的 外掛程式 系統,用於全域性改變django的輸入或輸出 2.中介軟體以類的形式體現 3.每個中介軟體元件負責做一些特定的功能,例如django包含乙個中介軟體元件 authenticationmiddl...
13 2 7 中介軟體
中介軟體顧名思義,是介於request與response處理之間的一道處理過程,相對比較輕量級,並且在全域性上改變django的輸入與輸出。因為改變的是全域性,所以需要謹慎實用,用不好會影響到效能。如果你想修改請求,例如被傳送到view中的httprequest物件。或者你想修改view返回的htt...
07 中介軟體
5 獲取的資料會交給最後乙個中介軟體的process response方法處理,然後依次向前面的中介軟體process response 6 在任一中介軟體的process request和process view方法中有返回值就會直接返回給process response 3 檢視函式 4 中介軟...