Skip to content
Snippets Groups Projects
middleware.py 554 B
Newer Older
  • Learn to ignore specific revisions
  • from django.conf import settings
    from django.core.exceptions import MiddlewareNotUsed
    
    
    
    Todd Dembrey's avatar
    Todd Dembrey committed
    class ESIMiddleware:
        """
        Adds "X-ESI: 1" header into the response if and ESI include has been used
        """
    
        def __init__(self, get_response):
            if not settings.ESI_ENABLED:
                raise MiddlewareNotUsed
            self.get_response = get_response
    
        def __call__(self, request):
            response = self.get_response(request)
    
    Todd Dembrey's avatar
    Todd Dembrey committed
    
            if getattr(request, '_esi_include_used', False):
                response['X-ESI'] = '1'
    
            return response