From 1643925e2c1ed68c632a8d2d57e04b2f60474f3f Mon Sep 17 00:00:00 2001 From: han0 Date: Thu, 19 Nov 2020 09:19:45 +0800 Subject: [PATCH] feat: encode --- nc_http/tools/encode.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 nc_http/tools/encode.py diff --git a/nc_http/tools/encode.py b/nc_http/tools/encode.py new file mode 100644 index 0000000..3789032 --- /dev/null +++ b/nc_http/tools/encode.py @@ -0,0 +1,41 @@ +import base64 + +import six + + +def ensure_unicode(s): + """ + :param s: + :return: + """ + if isinstance(s, six.binary_type): + return s.decode('utf-8') + else: + return s + + +def ensure_byte(s): + """ + :param s: + :return: + """ + if isinstance(s, six.text_type): + return s.encode('utf-8') + else: + return s + + +def string_to_base64(s): + """ + :param s: + :return: + """ + return base64.b64encode(ensure_byte(s)) + + +def base64_to_string(b): + """ + :param b: + :return: + """ + return ensure_unicode(base64.b64decode(b))