base64编码解码

在使用json传输图片时,需要做格式转换。
图片是以二进制的数据形式存储在数据库,如果直接用json包装二进制数据时,会报错。

所以需要将二进制数据使用base64编码后再进行json传输。

encode和decode是字符串到二进制的编码和解码。
而base64的编码是在二进制的基础上,即base64格式的数据解码为二进制数据。

个人理解base64是作为一种在现有编码的基础上再次进行加密的编码。

Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。
编码 b64encode
解码 b64decode

import base64
 
st = 'hello world!'.encode()#默认以utf8编码

res = base64.b64encode(st) # 使用base64编码
print(res.decode())#默认以utf8解码

res = base64.b64decode(res)
print(res.decode())#默认以utf8解码

结果

aGVsbG8gd29ybGQh
hello world!

第一次解码

aGVsbG8gd29ybGQh
此时是 “hello world” 在被base64编码的基础上进行的解码 , 类似于加密后数据进行utf-8解码 。

第二次解码
hello world!
b64decode 为解码 ,相当于解密。 所以可以打印 hello world!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值