当前位置: 首页 > article >正文

前后端开发中,图片上传到不同格式(二进制数据ORbase64编码)

1、base64编码

  • 适合小文件(如图标、头像)。

  • 实现简单,适合快速开发

前端通过 FileReader 将图片文件转换为 Base64 编码,然后上传到服务器

后端接收到 Base64 编码的图片后,将其解码为二进制数据(Buffer),然后保存为文件:

2、二进制数据

  • 适合大文件(如高清图片、视频)。

  • 性能更好,节省带宽。

使用 FormData 直接上传二进制文件:

const formData = new FormData();
formData.append('file', file); // 直接上传文件
const res = await uploadImage(formData); // 使用 FormData 上传

使用 multipart/form-data 解析二进制文件:

const multer = require('multer');
const upload = multer({ dest: 'uploads/' }); // 设置存储目录

router.post('/upload_image', authenticate.authenticateToken, upload.single('file'), (req, res) => {
    const filePath = req.file.path; // 获取文件路径
    res.json({ message: '上传成功', filePath });
});


http://www.kler.cn/a/597818.html

相关文章:

  • AI比人脑更强,因为被植入思维模型【17】万物联系思维模型
  • Unity | 游戏数据配置
  • 如何在Linux CentOS上安装和配置Redis
  • Okhttp响应Json数据升级版源代码
  • JS 算术运算符
  • 在 coc.nvim 插件中,自动补全时,候选词后面的 大写字母
  • 【机器学习】使用Python Spark MLlib进行预测模型训练
  • 【uniapp】内容瀑布流
  • 系统架构设计知识体系总结
  • k8s运维 设置Pod实现JVM内存根据容器内存动态调整
  • 使用BAT批处理加PYTHON进行WORD批量文字删除
  • 银河麒麟桌面版包管理器(五)
  • 使用vscode搭建pywebview集成vue项目示例
  • Android Coil3阶梯preload批量Bitmap拼接扁平宽图,Kotlin
  • Liunx系统Microsoft SQL Server数据库还原
  • 设计模式:创建型、结构型、行为型
  • 【Spring】深入理解 Spring 事务管理
  • Cesium 自定义路径导航材质
  • 运算放大器(一)运算放大器的参数、选型与应用
  • 防火墙设置屏蔽漏洞