位置: IT常识 - 正文

图片上传流程&前端上传文件&后端保存文件&并返回图片地址(上传图片照片)

编辑:rootadmin
图片上传流程&前端上传文件&后端保存文件&并返回图片地址

推荐整理分享图片上传流程&前端上传文件&后端保存文件&并返回图片地址(上传图片照片),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:图片上传流程步骤规范,图片上传平台视频教程,上传 图片,图片上传流程步骤规范,图片上传怎么操作,图片上传流程步骤规范,图片上传怎么操作,图片上传流程步骤规范,内容如对您有帮助,希望把文章链接给更多的朋友!

也是在最近一点时间写小demo 遇到的一些问题

比如在用户界面,用户选择本地的一张照片,前端把照片传到后端,后端怎么把照片保存到服务器,然后返回给 图片线上地址。也是找了一些文章,然后分享下。 

技术

前端:react

后端:egg.js(node框架)

base64 转换 

图片上传流程&前端上传文件&后端保存文件&并返回图片地址(上传图片照片)

转二进制 保存图片

base64(mdn)

Base64 是一组相似的二进制到文本(binary-to-text)的编码规则,使得二进制数据在解释成 radix-64 的表现形式后能够用 ASCII 字符串的格式表示出来。Base64 这个词出自一种 MIME 数据传输编码。

Base64 编码普遍应用于需要通过被设计为处理文本数据的媒介上储存和传输二进制数据而需要编码该二进制数据的场景。这样是为了保证数据的完整并且不用在传输过程中修改这些数据。Base64 也被一些应用(包括使用 MIME 的电子邮件)和在 XML 中储存复杂数据时使用。

为什么转成base64&好处传输信道只支持ASCII字符,不方便传输二进制流的场合。含有非ASCII字符,容易出现编码问题。所以需要用base64转化为ascii字符。Base64用于将二进制数据编码成ASCII字符 (图片、文件等都可转化为二进制数据)。图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址。将图片转换为base64编码最常见的应用就是在将网页中的一些图片转为base64编码可以实现网页图片在网速 不好的时候先于内容加载和减少http的请求次数来减少网站服务器的负担。获取文件的base64格式<!-- 我这里写个简单的样式 --><input type="file"><button>提交</button>

 选择一张图片文件,然后点击提交按钮我们就会得到一个 base64字符串

const files = document.querySelector('input[type=file]') const btn = document.querySelector('button') btn.addEventListener('click', function () { var reader = new FileReader(); reader.readAsDataURL(files.files[0]); reader.onloadend = function () { var base64 = reader.result; console.log(base64); } })

console:

 我们可以通过这个 base64 格式的字符串,直接复制到浏览器的地址上,就能访问图片

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAADMUExURUdwTPn5+/j4/Pn5+/n5/Pn5+/n5+/n5+/j4+/n5+vv7+/j4+/n5+vv7+/n5+/j4+/j4+vn5+vn5/Pj4+/r6+vr6/Pn5+/n5+/r6+vr6/Pn5+/j4+vj4+gAAAPHx8wcHB0ZGRkdHSLS0trOztbKytLGxs2NjZAYGBkxMTfPz9dHR0pCQkggICPb2+F5eX2JiYxoaGkZGR4+PkdLS093d38jIyQkJCUtLTDc3N7W1t9PT1I2Nj2LkZLoAAAAkdFJOUwD+IpKwVQT57P1y0kIM58w8BvB03wjRW7kzYoka7wJtZbFuA8zxGUAAAAIESURBVFjDrZjpdoIwEIWjoIC7goJQ1w7a1ta6dt/7/u/UKNrWhWSCc/8y5ztAMncWxuLVbvqB3nBMwzCdhh74zTZLoLOO3oI9tfTOmRql7noWHJXluXU0pmiXQKCSXURhsjkTJDJzWTmnkgeE8hUJpqqlAKWUVhVx0mVAq5yO5xRqoKBaIY6TMUBJRuY4p2uBoqzu0fdR5nDSkXcqGJBAxsF/StcgkWp7Z1ctQ0KVd++TBoml7eRFKjko9S9bsnk4Qfm/DM7BScr9+o95Gsjc+pMNJ8re+KrID19eB3JQKXJfNz5ieReGD59ykrsGefEB85BrOJKCvHXdESTrJMSRrFWV6gsCxiGS1OGgnuD582JDupKAdF6XW6KA0RBHarVZUxxxjSQ1mQ8kJJ8FQEIKmA4kJJ015Pf25lZOajAH8KTFLDbEYSgL2ZLu462EoarQ4CMCvcfXJRRocBlxwm8ByFTgXEwFn+YocAQe58iPH8Xhx6+TcPiFDEg4PEV8Eg5PWqGNTLEcbiNCY5tjOdzYhFY7QXJWVoswfzlnbf6icjR745xHOWddjkQFEr7Gk6elPIk8WcnGypU3EShtmgiytoau0SJr/eiaUbL2mK5hpxshyIYaujGLbvCjG0XphmO6cZ1ugUC30qBbshCufegWUYSrsWhZ1+8dLut6qsu6SOcq68Mf88U7H+osen4AAAAASUVORK5CYII=

这串字符串其实就是一张照片的DataURL,就是利用base64编码把图片数据翻译成标准ASCII字符。也可以把这个字符串直接放到 img 标签 src 上。这样也可以节省 http网络的一次请求

字符串的结构:

data:image/png;base64          

本文链接地址:https://www.jiuchutong.com/zhishi/289055.html 转载请保留说明!

上一篇:塔霍湖国家公园中的沙港,内华达州 (© Mariusz Blach/Getty Images Plus)(天国拯救晕倒的人多久起来)

下一篇:日落时分被雪覆盖的挪威云杉林,德国图林根 (© Frank Sommariva/ImageBROKER/Offset by Shutterstock)(日落时的雪景)

  • 制造业做贸易出口可以退税吗
  • 小规模附加税减半征收什么时候开始
  • 增值税和城建税怎么算
  • 年度纳税申报表A105000纳税调整项目明细表中,收入
  • 以摊余成本计量的金融资产交易费用
  • 企业商品收入确认的依据
  • 所得税季报填错了已经申报了
  • 城建税和教育附加税
  • 供热企业不得抵扣的进项计算
  • 税控盘费用减免分录
  • 物业企业门禁卡如何记账?
  • 工资代扣款项是什么意思
  • 冲减预提费用
  • 出售固定资产的税率是多少
  • 分包挂靠认定依据
  • 营改增后挂靠开票作收入吗?
  • 销售肉制品税率
  • 印花税这个月没交下个月补报可以吗?
  • 旅游企业小规模纳税人差额征收
  • 醋开票属于什么类
  • 不增税、免税、零税率的差异
  • 销售二手车需要注意什么
  • 土地增值税清算时间
  • 企业提供技术咨询服务的企税优惠政策
  • 暂估应付款借方
  • 贴现率与再贴现率计算机行业是好多
  • 工会经费缴纳比例是哪里规定的
  • windows10如何设置密码
  • 简述linux系统的启动
  • 冲办公费会计分录
  • 营改增后哪些费用可以抵扣
  • 进口货物怎样报关
  • php连接数据库代码是什么
  • PHP:JDToJulian()的用法_日历函数
  • 预付办公用品费用,未收到发票
  • 为庆祝中秋而摆放的东西
  • 委托收款拒收会退回吗
  • thinkphp3.2框架
  • 人工智能导论论文2000字
  • ps渐变透明效果怎么弄
  • qt无边框窗口设计
  • dedecms配置
  • 代管资金支出怎么做账
  • 帝国cms 开启动态
  • 安装mysql5.1的步骤和方法
  • sql server评估期已过版本升级时重启失败
  • 增值税专用发票怎么开
  • 社保减免财务账务处理
  • 电子税务局发票作废流程
  • 个体户开出的发票没跟对方说自己冲红了怎么办
  • 企业接受捐赠增值税处理
  • 应收账款和应付账款属于什么科目
  • 上市公司回购股票多久可出售
  • 取得技术服务费收入会计分录
  • 公司与公司之间人与人之间最大的区别
  • 最新的会计规定出台时间
  • 培训机构账务处理
  • 开发票系统税号0和o怎么区别?
  • 账面价值,账面净值,账面余额三者的区别存货
  • 公司增资认缴
  • mysql 一键安装
  • windowsxp教程
  • linux系统中用户账户有哪些分类
  • info.exe病毒
  • win7如何彻底删除软件
  • incredr
  • qt5.15教程
  • js设计模式有什么用
  • 用linux搭建服务器
  • 快速掌握知识的方法
  • python把html页面生成图片
  • android-3
  • app启动页动画效果
  • 使用Python对MySQL数据操作
  • WINDOWS 同时安装 python2 python3 后 pip 错误的解决方法
  • jquery-validation
  • jquery实现轮播图原理
  • Android4.4 wpa_supplicant深入分析之wpa_supplicant初始化流程续
  • javascript中window对象的子对象不包含
  • 销售税金含增值税怎么计算企业所得税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设