7: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
转载于//www.cnblogs.com/qwj-sysu/p/4189991.html
还没有评论,来说两句吧...