首页 > 其他分享 >base64编码和解码

base64编码和解码

时间:2022-10-28 10:23:23浏览次数:50  
标签:info 编码 res 解码 base64 userid age

base64 可以把字符串编码成base64的编码格式:(大小写字母,数字和 =)

eyJzdWIiOiAiMTIzNDU2Nzg5MCIsICJuYW1lIjogImxxeiIsICJhZG1pbiI6IHRydWV9

base64可以把base64编码的字符串,解码回原来的格式

应用场景:

jwt中使用
网络中传输字符串就可以使用base64编码
网络中传输图片,也可能使用base64的编码

编码过程

import json
import base64

d = {'name': 'zxr', 'userid': 1, 'age': 18}
info = json.dumps(d)
# print(info)  # {"name": "zxr", "userid": 1, "age": 18}

# 把字符串转成bytes格式的俩种方式
# 第一种:info.encode('utf-8')
# res = base64.b64encode(info.encode('utf-8'))
# print(res)  # b'eyJuYW1lIjogInp4ciIsICJ1c2VyaWQiOiAxLCAiYWdlIjogMTh9'

# 第二种:强转
print(bytes(info, encoding='utf-8'))  # b'{"name": "zxr", "userid": 1, "age": 18}'

解码过程

import json
import base64

d = {'name': 'zxr', 'userid': 1, 'age': 18}
info = json.dumps(d)
b'eyJuYW1lIjogInp4ciIsICJ1c2VyaWQiOiAxLCAiYWdlIjogMTh9'

res = base64.b64decode('eyJuYW1lIjogInp4ciIsICJ1c2VyaWQiOiAxLCAiYWdlIjogMTh9')
print(res)  # b'{"name": "zxr", "userid": 1, "age": 18}'

将图片保存起来

import json
import base64
d = {'name': 'lqz', 'userid': 6, 'age': 19}
info = json.dumps(d)
print(info)
# 把字符串使用base64编码
res=base64.b64encode(info.encode('utf-8'))
print(res)  # eyJuYW1lIjogImxxeiIsICJ1c2VyaWQiOiA2LCAiYWdlIjogMTl9
res=base64.b64decode(s)
with open('code.png','wb') as f:
    f.write(res)

标签:info,编码,res,解码,base64,userid,age
From: https://www.cnblogs.com/suncolor/p/16834931.html

相关文章

  • 【HMS Core】定位服务逆地理编码问题
    ​关于华为HMS-定位服务非华为手机逆地理编码不可用的问题。背景:在非华为手机例如小米手机上集成华为定位服务的逆地理编码功能运行后,报错HMSSDK_ServiceErrorCodeAdapto......
  • Pycharm 如何自动调整 Python 代码符合 pep8 编码规范
    前言学生时代,写的一手漂亮的好字,能给人留下好的印象。作为IT人,写的一手漂亮的代码也会给人留下美好的印象。代码就是自己的脸面,不管写质量怎样,首先要写的漂亮。Python......
  • 7-1 哈夫曼编码
    给定一段文字,如果我们统计出字母出现的频率,是可以根据哈夫曼算法给出一套编码,使得用此编码压缩原文可以得到最短的编码总长。然而哈夫曼编码并不是唯一的。例如对字符串"aa......
  • woff2转base64(字体图标)
    可以参考这个Github项目:https://github.com/nfroidure/ttf2woff2应该是在google官方woff2项目外面包了一层。使用示意如下:varfs=require('fs');varttf2woff2=req......
  • url 转图片流 / url转base64 / base64 转图片流 / base64转url
    1.url转图片流//url转图片流consturlToFile=(url,imageName)=>{returnnewPromise((resolve,reject)=>{letblob=null;constxhr=newX......
  • vue-js中键盘事件编码
    js里面的键盘事件经常用到的:keyCode8=BackSpaceBackSpacekeyCode9=TabTabkeyCode12=ClearkeyCode13=EnterkeyCode16=Shift_LkeyCode17=Control_Lkey......
  • 什么是Base64 编码,Base64 编码有哪些优缺点
    很多朋友在工作中,可能经常会用到Base64编码。Base64编码是网络上很常见的用于8Bit字节码的编码方式之一,那么,大家知道为什么要使用Base64编码,Base64编码有哪些优缺点呢?下面......
  • 什么是Base64 编码,Base64 编码有哪些优缺点
    很多朋友在工作中,可能经常会用到Base64编码。Base64编码是网络上很常见的用于8Bit字节码的编码方式之一,那么,大家知道为什么要使用Base64编码,Base64编码有哪些优缺点呢?下面......
  • 什么是Base64 编码,Base64 编码有哪些优缺点
    很多朋友在工作中,可能经常会用到Base64编码。Base64编码是网络上很常见的用于8Bit字节码的编码方式之一,那么,大家知道为什么要使用Base64编码,Base64编码有哪些优缺点呢?下面......
  • 【原创】合约编码方式解析
    例1:函数定义:functionbaz(uint32x,booly)publicpurereturns(boolr){r=x>32||y;}实际调用:baz(69,true)编码为:方法ID——0xcdcd77c0,方法baz(uint32......