X-Git-Url: https://git.mdrn.pl/django-ssify.git/blobdiff_plain/64c5163e7aead7eb60951e040998ade343c079c5..bc43e9922ca91c95797311937e7b5c0134211db5:/ssify/middleware.py diff --git a/ssify/middleware.py b/ssify/middleware.py index 6b8b2ed..8e0f453 100644 --- a/ssify/middleware.py +++ b/ssify/middleware.py @@ -118,13 +118,19 @@ class SsiMiddleware(object): request.ssi_vars_needed = {} def _process_rendered_response(self, request, response): + if 'Content-Length' in response: + del response['Content-Length'] # Prepend the SSI variables. if hasattr(request, 'ssi_vars_needed'): vars_needed = request.ssi_vars_needed - else: - vars_needed = json_decode(response.get('X-Ssi-Vars-Needed', '{}')) + elif 'X-Ssi-Vars-Needed' in response: + vars_needed = json_decode(response['X-Ssi-Vars-Needed']) for k, v in vars_needed.items(): vars_needed[k] = SsiVariable(*v) + if not settings.DEBUG: + del response['X-Ssi-Vars-Needed'] + else: + vars_needed = None if vars_needed: response.content = provide_vars(request, vars_needed) + \ @@ -139,6 +145,8 @@ class SsiMiddleware(object): del response[header] else: response[header] = content + if not settings.DEBUG: + del response['X-ssi-restore'] else: for response_modifier in getattr(request, 'ssi_patch_response', []): response_modifier(response) @@ -188,4 +196,6 @@ class LocaleMiddleware(locale.LocaleMiddleware): if (request.session.accessed and (settings.USE_I18N or settings.USE_L10N)): request.session.accessed = False + if not hasattr(request, 'ssi_patch_response'): + request.ssi_patch_response = [] request.ssi_patch_response.append(ssi_vary_on_cookie)