Django 中间件 Middleware

本文介绍如何使用Django的中间件实现简易的认证系统。通过创建一个名为QtsAuthenticationMiddleware的中间件,可以检查用户的登录状态,并在未登录的情况下重定向至登录页面。此中间件在Django项目的settings.py中进行配置。

middleware

这东西类似于 javaEE struct

当中的 拦截器

然后 直奔主题

添加一个 middleware.py

代码部分

1
2
3
4
5
6
7
8
9
10
from  django.http  import  HttpResponseRedirect  
from  django.contrib.auth  import  SESSION_KEY  
from  urllib  import  quote  
class  QtsAuthenticationMiddleware( object ):  
     def  process_request( self , request):     
         if  request.path ! =  '/login/' #检测如果不是登录的话  
             if  "username"  in  request.COOKIES:  #检测 cookies 有没有设置 如果登录成功应该是有设置的 成功pass
                 pass
             else :    # 检测如果没有登录就运行到登录界面
                 return  HttpResponseRedirect( "/login" )


在settings.py MIDDLEWARE_CLASSES 要添加这个 middleware


1
2
3
4
5
6
MIDDLEWARE_CLASSES  = 
     'django.middleware.common.CommonMiddleware'
     'django.contrib.sessions.middleware.SessionMiddleware'
     'django.contrib.auth.middleware.AuthenticationMiddleware'
     'middleware.QtsAuthenticationMiddleware'
)


当然这个东西也不仅仅这点内容 

官方文档 https://docs.djangoproject.com/en/dev/topics/http/middleware/

还是比较强大的东西

http://hideto.iteye.com/blog/51983

这是翻译

因为用到的就上面的那些代码

所以先暂时写到这里吧 下次看了再写

本文转自    拖鞋崽      51CTO博客,原文链接:http://blog.51cto.com/1992mrwang/1206355

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值