Django 中間鍵(檢查登入狀態)

2021-10-01 04:24:44 字數 1644 閱讀 7154

週期: 前端請求–> nginx—>uwsgi— 中介軟體—>url專案路由----->檢視----->orm—>獲取資料返回給view----->渲染模板拿到字串---->中間鍵----->uwsig-----nginx----前端渲染

get_response

process_reqeust

def

middleware

(get_response)

:# 這個地方編寫得**會在第一次執行 也就是初始化得時候

print

('__init__'

)def

middleware

(request)

:# 這個地方編寫得**回在檢視處理之前執行

print

('檢視請求之前'

) response = get_response(request)

# 這個地方編寫得**回在檢視處理之後執行 也就是響應得時候

print

('檢視處理之後'

)return response

return middleware

需要進行啟用 在settings.py裡面

'utils.middlewate.middleware'

,# 啟用中介軟體

檔名.自定義指令碼名字.中介軟體的方法名

在訪問**的時候,你想讓使用者必須登入才能訪問

@login_required(login_url=

'/login/'

)

def

my_login_required

(func)

:def

inner

(request)

:if request.user.is_authenticated:

return func(request)

else

:# 如果沒有登入 重定向

return redirect(

'/user/login/'

)return inner

from user.models import users

# 針對於沒有登入訪問頁面

Django之中間鍵

middleware django.middleware.security.securitymiddleware django.contrib.sessions.middleware.sessionmiddleware 會話管理的中間鍵 django.middleware.common.common...

Django 中介軟體 登入驗證

django的request請求需要首先經過中介軟體處理,再通過url查詢到對應的views函式進行處理。在settings的middleware classes中 新增設定中介軟體進行啟用,大致原理如下圖所示 在使用django框架進行開發的過程中,遇到乙個問題 要求對覺得多數頁面請求reques...

Django中介軟體(強制登入)

中介軟體 middleware 用於在http請求到達 檢視函式之前 和 檢視函式return之後 django會根據自己的規則在 合適的時機執行中介軟體中相應的方法。常用作view中冗餘功能的抽取,如每個頁面 或某些頁面 在訪問前強制登入。強制登入例項 定義中介軟體 可以新建乙個包 中介軟體中常用...