簡體   English   中英

Django 1.9,自定義中間件+ 404錯誤

[英]Django 1.9, custom middleware + 404 error

我編寫了自定義中間件,用於檢查來自用戶的邀請。 這樣做的目的是限制沒有邀請的用戶訪問網站。 一切都很好,除了當404或任何其他異常發生並且我不想要時,用戶可以看到網站的一部分。

我正在使用Django 1.9。 在以前的版本中(我記得),有Exception中間件,但現在看不到。 我試圖將中間件放在堆棧的頂部,但這沒有幫助。 我還可以做些什么?

可以說,我有以下中間件:

MIDDLEWARE_CLASSES = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'myproject.middleware.InviteLoginForWebsiteMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.middleware.locale.LocaleMiddleware',
]

這是重定向到處理程序的URL:

urlpatterns = [

    url(r'^403/$', views.handler403, name="403"),
    url(r'^404/$', views.handler404, name="404"),
    url(r'^500/$', views.handler500, name="500"),

]

謝謝!

我已經通過在自定義中間件中使用process_request()而不是process_view()解決了該問題。 謝謝大家!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM