Django

Code

Changeset 3166

Show
Ignore:
Timestamp:
06/19/06 23:06:16 (2 years ago)
Author:
adrian
Message:

Fixed #2078 -- Improved HttpResponseRedirect? and HttpResponsePermanentRedirect? to percent-encode non-ASCII characters in the Location header. Thanks, Andrey

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/http/__init__.py

    r3164 r3166  
    11from Cookie import SimpleCookie 
    22from pprint import pformat 
    3 from urllib import urlencode 
     3from urllib import urlencode, quote 
    44from django.utils.datastructures import MultiValueDict 
     5 
     6RESERVED_CHARS="!*'();:@&=+$,/?%#[]" 
    57 
    68try: 
     
    243245    def __init__(self, redirect_to): 
    244246        HttpResponse.__init__(self) 
    245         self['Location'] = redirect_to 
     247        self['Location'] = quote(redirect_to, safe=RESERVED_CHARS) 
    246248        self.status_code = 302 
    247249 
     
    249251    def __init__(self, redirect_to): 
    250252        HttpResponse.__init__(self) 
    251         self['Location'] = redirect_to 
     253        self['Location'] = quote(redirect_to, safe=RESERVED_CHARS) 
    252254        self.status_code = 301 
    253255