首页 > 代码库 > django 中间件
django 中间件
中间件
中间件是一个连接django请求/相应处理的框架,是一个轻量级的低层次的全局影响django输入输出的系统插件。
每一个中间件组件负责一些特定的功能,这里我们我们只看一下如何激活使用系统自带的中间件,至于如何写自己的中间件,目前自己的水平还没到,主要觉得还用不着,等用着的时候在写吧
激活中间件
在django中激活中间件很简单,只需要在django的配置文件中把自己想使用的中间件的名字加入到 MIDDLEWARE_CLASSES这个列表里面就ok了
MIDDLEWARE_CLASSES = ( ‘django.middleware.common.CommonMiddleware‘, ‘django.contrib.sessions.middleware.SessionMiddleware‘, ‘django.middleware.csrf.CsrfViewMiddleware‘, ‘django.contrib.auth.middleware.AuthenticationMiddleware‘, ‘django.contrib.messages.middleware.MessageMiddleware‘,)
值得注意的是,django在处理请求的时候,是顺序检索中间件列表的;django在处理相应的时候,是逆序检索中间件列表的;可以按照下图来理解
每一个请求响应都是从左到右的,所以是现顺序再逆序的
内建的中间件(django自带的中间件)
Cache middleware,正如其名,关于缓存的中间件
- class UpdateCacheMiddleware
- class FetchFromCacheMiddleware
“Common” middleware,通用中间件,主要是增加了一些便利的功能,比如有关user_agent(检查agent),append_slash(添加后斜线),prepend_www(甜加www前缀),send_broken_link_emails(死链报告)以及Use_etags之类的功能
- class CommonMiddleware
View metadata middleware 查看元数据中间件,
- class XViewMiddleware
GZip middleware gzip压缩中间件,为那些接受gzip压缩协议的浏览器压缩网页内容
- class GZipMiddleware
Conditional GET middleware 有条件的get中间件,处理一些有特殊要求的get请求
- class ConditionalGetMiddleware
Reverse proxy middleware 反向代理中间件
- class SetRemoteAddrFromForwardedFor
Locale middleware 语言环境中间件
- class LocaleMiddleware
Message middleware 消息中间件
- class MessageMiddleware
Session middleware 会话中间件
- class SessionMiddleware
Authentication middleware 认证中间件
- class AuthenticationMiddleware
CSRF protection middleware csrf保护中间件
- class CsrfViewMiddleware
Transaction middleware 交易中间件
- class TransactionMiddleware
X-Frame-Options middleware
- class XFrameOptionsMiddleware
p
django 中间件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。