Skip to content

Commit 1ffb490

Browse files
committed
Update __init__.py
Fix location or urllib.quote and urllib.unquote for py3k
1 parent b22f98f commit 1ffb490

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

oauth2/__init__.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,10 @@ def to_utf8_optional_iterator(x):
178178

179179
def escape(s):
180180
"""Escape a URL including any /."""
181-
return urllib.quote(s.encode('utf-8'), safe='~')
181+
try:
182+
return urllib.quote(s.encode('utf-8'), safe='~')
183+
except AttributeError:
184+
return urllib.parse.quote(s.encode('utf-8'), safe='~')
182185

183186
def generate_timestamp():
184187
"""Get seconds since epoch (UTC)."""
@@ -635,15 +638,21 @@ def _split_header(header):
635638
# Split key-value.
636639
param_parts = param.split('=', 1)
637640
# Remove quotes and unescape the value.
638-
params[param_parts[0]] = urllib.unquote(param_parts[1].strip('\"'))
641+
try:
642+
params[param_parts[0]] = urllib.unquote(param_parts[1].strip('\"'))
643+
except AttributeError:
644+
params[param_parts[0]] = urllib.parse.unquote(param_parts[1].strip('\"'))
639645
return params
640646

641647
@staticmethod
642648
def _split_url_string(param_str):
643649
"""Turn URL string into parameters."""
644650
parameters = parse_qs(param_str.encode('utf-8'), keep_blank_values=True)
645651
for k, v in parameters.items():
646-
parameters[k] = urllib.unquote(v[0])
652+
try:
653+
parameters[k] = urllib.unquote(v[0])
654+
except AttributeError:
655+
parameters[k] = urllib.parse.unquote(v[0])
647656
return parameters
648657

649658

0 commit comments

Comments
 (0)