base64 图片进行编码、解码;api调用

1、base64 图片进行编码、解码

编码

matlab 复制代码
import base64

# 假设您有一个图像文件,例如 'image.jpg'
with open(r"C:\Users\l****1686722996428308480-1 (1).jpg", 'rb') as image_file:
    # 读取图像文件的二进制数据
    image_data = image_file.read()
    
    # 将二进制数据编码为Base64字符串
    encoded_string = base64.b64encode(image_data).decode('utf-8')
    
    print(encoded_string)

解码

matlab 复制代码
import base64
from PIL import Image
from io import BytesIO
 
# Base64 编码的字符串
base64_string = encoded_string
 
# 去除头部信息并进行解码
image_data = base64.b64decode(base64_string)
 
# 创建 BytesIO 对象来保存解码后的数据
buffered_io = BytesIO()
buffered_io.write(image_data)
 
# 打开图片文件
img = Image.open(buffered_io)
 
# 显示图片(如果需要)
img.show()

2、api调用

flask后端接口

matlab 复制代码
from flask import Flask, request

app = Flask(__name__)

@app.route('/receive-base64', methods=['POST'])
def receive_base64():
    # 从POST请求中获取Base64编码的字符串
    base64_string = request.form.get('data')
    if base64_string:
        # 这里可以添加处理Base64字符串的逻辑,例如解码或存储
        print(f"Received Base64 string: {base64_string}")
        # 返回确认消息
        return "Base64 string received successfully."
    else:
        # 如果没有接收到Base64字符串,返回错误消息
        return "No Base64 string received."

if __name__ == '__main__':
    app.run(debug=True)

requests请求

matlab 复制代码
import requests
import base64

# 假设你有一个Base64编码的字符串
base64_string = "your_base64_encoded_string_here"

# 将Base64字符串转换为字节对象
data_bytes = base64.b64decode(base64_string)

# 构建请求的payload
payload = {
    'data': data_bytes
}

# 发送POST请求
response = requests.post('http://your-flask-server-address/receive-base64', files=payload)

# 打印响应内容
print(response.text)
相关推荐
摸鱼仙人~3 小时前
HTTP 状态码系统拆解
网络·网络协议·http
学编程就要猛3 小时前
JavaEE初阶:网络原理-HTTP(上)
网络·网络协议·http
菱玖5 小时前
常见 HTTP 状态码详解
网络·网络协议·http
我不是立达刘宁宇7 小时前
CORS(跨原产资源共享)靶场1
python·http
胡图图不糊涂^_^8 小时前
网络原理笔记
java·网络·笔记·学习·tcp/ip·http·https
tryqaaa_1 天前
学习日志(二)【linux全部命令,http请求头{有例题},Php语法学习】
linux·学习·http·php·web
Rust研习社1 天前
使用 Tonic 构建高性能异步 gRPC 服务
开发语言·网络·后端·http·rust
Rick19931 天前
SSE、WebSocket、HTTP
websocket·网络协议·http
摸鱼仙人~1 天前
HTTP状态码全量详解(定义+核心区别+业务场景+前端常见诱因+排查方案+工程处理)
前端·网络协议·http
希望永不加班1 天前
SpringBoot 安全加固:HTTPS 配置与 HTTP/2
网络·网络协议·安全·http·https