django cache middleware

django cache middleware

"""

缓存中间件。如果可能,每一个django页面将会基于URL缓存,这种能够缓存中间件的方法设置为updatedCacheMiddleware为第一个中间件,FetchFromCacheMiddleware为最后一个
MIDDLEWARE = 
    [    'django.middleware.cache.UpdateCacheMiddleware',
        ...
        'django.middleware.cache.FetchFromCacheMiddleware'
    ]

在响应阶段,UpdateCacheMiddleware需要最后执行,处理中间件需要自顶向上,在请求阶段,FetchFromCacheMiddleware需要最后执行,处理中间件自定向上
简单的类CacheMiddleware被一些简单的网站使用,然而,如果任何其他的一个缓存中间件需要影响缓存键,你将需要两部分UpdateCacheMiddleware`` 和
``FetchFromCacheMiddleware`,当你使用djanog的LocaleMiddleware这个经常发生。

"""

from django.conf import settings
from django.core.cache import DEFAULT_CACHE_ALIAS, caches
from django.utils.cache import (
    get_cache_key, get_max_age, has_vary_header, learn_cache_key,
    patch_response_headers,
)
from django.utils.deprecation import MiddlewareMixin


class UpdateCacheMiddleware(MiddlewareMixin):
  """ 如果响应被缓存,响应阶段的缓存中间件更新,两部分更新和抓取缓存中间件必须有一部分被使用。
    UpdateCacheMiddleware在MIDDLEWARE中必须成为中间件的第一部分
    在响应阶段它必须最后被获得"""
    def __init__(self, get_response=None):
        self.cache_timeout = settings.CACHE_MIDDLEWARE_SECONDS
        self.key_prefix = settings.CACHE_MIDDLEWARE_KEY_PREFIX
        self.cache_alias &#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值