django的中间件可以在视图函数执行前执行,比如登陆验证、日志记录等,下面简单说明一下中间件的基础用法,主要为笔者学习时的笔记
在滕州等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、成都网站制作、外贸网站建设 网站设计制作定制制作,公司网站建设,企业网站建设,成都品牌网站建设,网络营销推广,成都外贸网站制作,滕州网站建设费用合理。
文件夹的名字可自定义,本文使用utils作为文件夹名
如用于登陆验证的中间件loginCheck.py
from django.http import HttpResponseRedirect
from django.utils.deprecation import MiddlewareMixin
class UserLoginCheck(MiddlewareMixin):
'''
登录验证中间件
'''
def process_request(self, request):
# 用户request请求前
path = ['/login/', '/logout/'] # 不需要进行登录检测的url
if request.path in path:
return
userinfoSession = request.session.get('userinfo')
if not userinfoSession:
return HttpResponseRedirect('/login/')
return
在setting.py文件中配置中间件
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'utils.loginCheck.UserLoginCheck', # 此处为自定义的中间件
]
中间件可定义的五种方法
Request预处理函数: process_request(self, request)
View预处理函数: process_view(self, request, callback, callback_args,callback_kwargs)
Template模版渲染函数:process_template_response()
Exception后处理函数:process_exception(self, request, exception)
Response后处理函数:process_response(self, request, response)
参考资料:https://baijiahao.baidu.com/s?id=1622776730103957680
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
标题名称:Django中间件-创新互联
转载源于:https://www.cdcxhl.com/article48/dhdghp.html
成都网站建设公司_创新互联,为您提供网站内链、网站设计、关键词优化、App开发、响应式网站、软件开发
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联