Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #7228 -- Fixed our ETag header creation to meet the HTTP spec, …

…by quoting it. Thanks, skjohn@us.ibm.com

git-svn-id: http://code.djangoproject.com/svn/django/trunk@7659 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 02bbd9a9b28de27748e0663e63a68ac66024bd73 1 parent 4094d03
@adrianholovaty adrianholovaty authored
Showing with 2 additions and 2 deletions.
  1. +1 −1  django/middleware/common.py
  2. +1 −1  django/utils/cache.py
View
2  django/middleware/common.py
@@ -108,7 +108,7 @@ def process_response(self, request, response):
if response.has_header('ETag'):
etag = response['ETag']
else:
- etag = md5.new(response.content).hexdigest()
+ etag = '"%s"' % md5.new(response.content).hexdigest()
if response.status_code >= 200 and response.status_code < 300 and request.META.get('HTTP_IF_NONE_MATCH') == etag:
cookies = response.cookies
response = http.HttpResponseNotModified()
View
2  django/utils/cache.py
@@ -104,7 +104,7 @@ def patch_response_headers(response, cache_timeout=None):
if cache_timeout < 0:
cache_timeout = 0 # Can't have max-age negative
if not response.has_header('ETag'):
- response['ETag'] = md5.new(response.content).hexdigest()
+ response['ETag'] = '"%s"' % md5.new(response.content).hexdigest()
if not response.has_header('Last-Modified'):
response['Last-Modified'] = http_date()
if not response.has_header('Expires'):
Please sign in to comment.
Something went wrong with that request. Please try again.