diff options
| author | Xavier Ordoquy | 2013-01-07 23:26:14 +0100 | 
|---|---|---|
| committer | Xavier Ordoquy | 2013-01-07 23:26:14 +0100 | 
| commit | 510d6a3c5540bbc20406ff79ce5f95d97b2a63f3 (patch) | |
| tree | 2a19077854f71266793c59222cc987e4d0848ef0 /rest_framework/authentication.py | |
| parent | 22a7dc27d8638b001d513598e5f0ba13698a1186 (diff) | |
| download | django-rest-framework-510d6a3c5540bbc20406ff79ce5f95d97b2a63f3.tar.bz2 | |
Introduced HTTP_HEADER_ENCODING.
Diffstat (limited to 'rest_framework/authentication.py')
| -rw-r--r-- | rest_framework/authentication.py | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/rest_framework/authentication.py b/rest_framework/authentication.py index 42f6f02b..c50bf944 100644 --- a/rest_framework/authentication.py +++ b/rest_framework/authentication.py @@ -8,6 +8,7 @@ from rest_framework import exceptions  from rest_framework.compat import CsrfViewMiddleware  from rest_framework.compat import smart_text  from rest_framework.authtoken.models import Token +from rest_framework.settings import api_settings  import base64 @@ -37,7 +38,9 @@ class BasicAuthentication(BaseAuthentication):              auth = request.META['HTTP_AUTHORIZATION'].split()              if len(auth) == 2 and auth[0].lower() == "basic":                  try: -                    auth_parts = base64.b64decode(auth[1].encode('iso-8859-1')).decode('iso-8859-1').partition(':') +                    encoding = api_settings.HTTP_HEADER_ENCODING +                    b = base64.b64decode(auth[1].encode(encoding)) +                    auth_parts = b.decode(encoding).partition(':')                  except TypeError:                      return None | 
