Changeset 6697 for django/trunk/django/middleware/gzip.py
- Timestamp:
- 11/18/07 21:41:46 (1 year ago)
- Files:
-
- django/trunk/django/middleware/gzip.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/middleware/gzip.py
r6538 r6697 1 1 import re 2 2 3 from django.utils.text import compress_string 3 4 from django.utils.cache import patch_vary_headers … … 12 13 """ 13 14 def process_response(self, request, response): 15 # It's not worth compressing non-OK or really short responses. 14 16 if response.status_code != 200 or len(response.content) < 200: 15 # Not worth compressing really short responses or 304 status16 # responses, etc.17 17 return response 18 18 19 19 patch_vary_headers(response, ('Accept-Encoding',)) 20 20 21 # Avoid gzipping if we've already got a content-encoding or if the 22 # content-type is Javascript and the user's browser is IE. 23 is_js = ("msie" in request.META.get('HTTP_USER_AGENT', '').lower() and 24 "javascript" in response.get('Content-Type', '').lower()) 25 if response.has_header('Content-Encoding') or is_js: 21 # Avoid gzipping if we've already got a content-encoding. 22 if response.has_header('Content-Encoding'): 23 return response 24 25 # Older versions of IE have issues with gzipped javascript. 26 # See http://code.djangoproject.com/ticket/2449 27 is_ie = "msie" in request.META.get('HTTP_USER_AGENT', '').lower() 28 is_js = "javascript" in response.get('Content-Type', '').lower() 29 if is_ie and is_js: 26 30 return response 27 31
