Browse files

Added more dict-like methods to HttpResponse as part of the response.…

…headers -> response._headers move, and fixed a few direct uses of response.headers in Django itself. Thanks to PhiR for tracking down and slaying these bugs.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@6235 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent 7179641 commit ca9388cdaf905e12560c751ca55f8237303e4494 @jacobian jacobian committed Sep 14, 2007
Showing with 10 additions and 4 deletions.
  1. +2 −2 django/core/handlers/modpython.py
  2. +1 −1 django/core/handlers/wsgi.py
  3. +6 −0 django/http/__init__.py
  4. +1 −1 django/middleware/gzip.py
View
4 django/core/handlers/modpython.py
@@ -159,8 +159,8 @@ def __call__(self, req):
# Convert our custom HttpResponse object back into the mod_python req.
req.content_type = response['Content-Type']
- for key, value in response.headers.items():
- if key != 'Content-Type':
+ for key, value in response.items():
+ if key != 'content-type':
req.headers_out[str(key)] = str(value)
for c in response.cookies.values():
req.headers_out.add('Set-Cookie', c.output(header=''))
View
2 django/core/handlers/wsgi.py
@@ -208,7 +208,7 @@ def __call__(self, environ, start_response):
except KeyError:
status_text = 'UNKNOWN STATUS CODE'
status = '%s %s' % (response.status_code, status_text)
- response_headers = [(str(k), str(v)) for k, v in response.headers.items()]
+ response_headers = [(str(k), str(v)) for k, v in response.items()]
for c in response.cookies.values():
response_headers.append(('Set-Cookie', str(c.output(header=''))))
start_response(status, response_headers)
View
6 django/http/__init__.py
@@ -274,6 +274,12 @@ def has_header(self, header):
return self._headers.has_key(header.lower())
__contains__ = has_header
+
+ def items(self):
+ return self._headers.items()
+
+ def get(self, header, alternate):
+ return self._headers.get(header, alternate)
def set_cookie(self, key, value='', max_age=None, expires=None, path='/', domain=None, secure=None):
self.cookies[key] = value
View
2 django/middleware/gzip.py
@@ -20,7 +20,7 @@ def process_response(self, request, response):
# Avoid gzipping if we've already got a content-encoding or if the
# content-type is Javascript (silly IE...)
- is_js = "javascript" in response.headers.get('Content-Type', '').lower()
+ is_js = "javascript" in response.get('Content-Type', '').lower()
if response.has_header('Content-Encoding') or is_js:
return response

0 comments on commit ca9388c

Please sign in to comment.