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

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

编码

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)

解码

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后端接口

from flask import Flask, requestapp = 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请求

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)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/336608.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot项目创建及采用本地tomcat打包发布

springboot项目发布 maven使用 解压maven安装包 修改配置文件settings.xml 更改镜像(使用maven添加依赖时&#xff0c;选择下载的地址&#xff0c;百度云已提供) <mirror><id>nexus-aliyun</id><mirrorOf>*</mirrorOf><name>Nexus aliyu…

java物品检验管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java Web 物品检验管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysq…

UWB 技术及应用

超宽带技术为工业自动化提供独特优势&#xff0c;是首要的室内定位技术。 UWB 因其相对于 RFID、BLE 或 WiFi 等同类技术的众多优势而被认为是室内定位技术的黄金标准。它是基于位置的自动化的理想解决方案。 UWB 结合了短光速脉冲&#xff0c;可在宽带宽上精确测量信号到达时…

Ansible自动化运维(二)ad-hoc 模式详解

&#x1f468;‍&#x1f393;博主简介 &#x1f3c5;云计算领域优质创作者   &#x1f3c5;华为云开发者社区专家博主   &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社区&#xff1a;运维交流社区 欢迎大家的加入&#xff01; &#x1f40b; 希望大家多多支…

CSDN : Armv8/Armv9架构从入门到精通二期-课程介绍

【学习对象】 [行业]&#xff1a;汽车电子、手机、服务器、云计算、物联网、人工智能&#xff1b; [人群]&#xff1a;本科/研究生/博士、初级工程师、中级工程师、资深工程师、行业大佬&#xff0c;即适合小白入门&#xff0c;也适合大佬查缺补漏&#xff1b; [方向]&#xf…

C++力扣题目-- 二叉树层序遍历

102.二叉树的层序遍历(opens new window)107.二叉树的层次遍历II(opens new window)199.二叉树的右视图(opens new window)637.二叉树的层平均值(opens new window)429.N叉树的层序遍历(opens new window)515.在每个树行中找最大值(opens new window)116.填充每个节点的下一个右…

openGauss企业版简化安装实战

openGauss企业版简化安装实战 操作系统配置数据库配置安装数据库检查 bilibili同步演示视频&#xff1a;https://www.bilibili.com/video/BV1JW4y1G7BVbilibili视频专栏&#xff1a;https://space.bilibili.com/282421760 操作系统配置 # 创建系统用户 groupadd -g 1008 dbgr…

学习记录9-TFT屏的使用

前言 一、验证连接是否正确 二、更改自己想用的图像 1.取模软件 Image2Lcd 2.9 的使用 2.使用 总结 前言 本文在中景园的代码上改写而来&#xff0c;主要记录下使用记录 一、验证连接是否正确 1.按内容说明进行线路连接 2.运行程序&#xff0c;因为内部有图片样本&…

2024年寒假即将来临 如何实现高质量亲子陪伴?

近日,各地陆续公布了寒假放假时间安排,孩子们期待着迎来一个休闲和轻松的假期。然而,对于许多家长来说,他们也意识到寒假不仅是一个放松的时间,更是一个增进亲子关系的宝贵机会,可以为孩子提供有意义的学习陪伴。 自“双减”政策落地后,学生的课业负担减轻许多,拥有了更多的空余…

3D Web可视化开发工具包HOOPS Communicator:提供Web端浏览大型模型新方案!

前言&#xff1a;HOOPS Communicator是Tech Soft 3D旗下的主流产品之一&#xff0c;具有强大的、专用的高性能图形内核&#xff0c;专注于基于Web的高级3D工程应用程序。其由HOOPS Server和HOOPS Web Viewer两大部分组成&#xff0c;提供了HOOPS Convertrer、Data Authoring的模…

智能合约介绍

莫道儒冠误此生&#xff0c;从来诗书不负人 目录 一、什么是区块链智能合约? 二、智能合约的发展背景 三、智能合约的优势 四、智能合约的劣势 五、一些关于智能合约的应用 总结 一、什么是区块链智能合约? 智能合约&#xff0c;是一段写在区块链上的代码&#xff0c;一…

【重学C语言】一、C语言简介

【重学C语言】一、C语言简介 什么是编程语言&#xff1f;编程语言 C语言发展史C语言标准变迁开发软件CLion安装步骤 VIsual Studio安装步骤 Clion 和 VS2022 绑定 电脑常识 什么是编程语言&#xff1f; 人类语言&#xff1a;语言就是人类进行沟通交流的表达方式&#xff0c;应…