1.介绍
用文本(ascii字符)来表示二进制数
对二进制数据进行处理,每3个字节一组,一共是3x8=24bit,划为4组,每组正好6个bit,Base64编码会把3字节的二进制数据编码为4字节的文本数据。
如果要编码的二进制数据不是3的倍数,Base64用\x00字节在末尾补足后,再在编码的末尾加上1个或2个=号,表示补了多少字节,解码的时候,会自动去掉。
2.用法
接收和返回的都是字节数据
info =b'a'
res = base64.b64encode(info)
data = base64.b64decode(res)
由于标准的Base64编码后可能出现字符+和/,在URL中就不能直接作为参数,所以又有一种"url safe"的base64编码,其实就是把字符+和/分别变成-和_:
res = base64.urlsafe_b64.encode(url)
data = base64.urlsafe_b64.decode(data)