這篇文章將為大家詳細講解有關Python Django中間件是什么?怎么用?,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
站在用戶的角度思考問題,與客戶深入溝通,找到張家界網(wǎng)站設計與張家界網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站制作、網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名申請、虛擬主機、企業(yè)郵箱。業(yè)務覆蓋張家界地區(qū)。一、什么是Django中間件
Django 中間件是用來處理Django的請求request和響應response的框架級別的鉤子,它是一個輕量,低級別的插件系統(tǒng),用于全局范圍內(nèi)改變Django的輸入,輸出。每個中間件組件都負責做一些特定的功能。
說的直白一點是中間件就是幫我們程序員在視圖函數(shù)執(zhí)行之前和執(zhí)行之后都可以一些額外的操作,它是一個自定義的類,類中定義了幾個方法,Django框架會在請求的特定時間去執(zhí)行這些方法。
二、Django中間件的定義規(guī)則
1、 自定義中間件的規(guī)則
?。?)要繼承MIDDLEWAREMIXIN類
from django.utils.deprecation import MiddlewareMixin
?。?)要重寫父類方法
父類的五個方法(主要process_request process_response)
(1)process_request(self,request)
*主要方法。請求剛進來時,執(zhí)行視圖函數(shù)之前調用。(無return)
1.中間件的process_request方法是在執(zhí)行視圖函數(shù)之前執(zhí)行的
2.當配置中間件時,會按照MIDDLEWARE的注冊順序,也就是列表的索引值,從前到后依次執(zhí)行的。
3.不同中間件之間傳遞的request都是同一個對象。
(2)process_view(self,request,view_func,view_args,view_kwargs)
*URL路由匹配成功后,執(zhí)行視圖函數(shù)之前調用,拿到視圖函數(shù)對象,及其所有參數(shù)。(無return)
''' process_view(self, request, view_func, view_args, view_kwargs) request是HttpRequest對象。 view_func是Django即將使用的視圖函數(shù)。 (它是實際的函數(shù)對象,而不是函數(shù)的名稱作為字符串。) view_args是將傳遞給視圖的位置參數(shù)的列表. view_kwargs是將傳遞給視圖的關鍵字參數(shù)的字典。 view_args和view_kwargs都不包含第一個視圖參數(shù)(request)。 '''
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。