位置: 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)(日落时的雪景)

  • 华为mate10pro参数(华为mate10)(华为mate10pro参数详细参数表)

    华为mate10pro参数(华为mate10)(华为mate10pro参数详细参数表)

  • 苹果手机会烧屏吗(苹果手机为什么不黑屏)

    苹果手机会烧屏吗(苹果手机为什么不黑屏)

  • 微信面部支付怎么设置(微信 面部支付)

    微信面部支付怎么设置(微信 面部支付)

  • 抖音无效视频什么意思(抖音无效视频是怎么回事)

    抖音无效视频什么意思(抖音无效视频是怎么回事)

  • 催促卖家处理退款按钮在哪(催商家退款怎么说合适)

    催促卖家处理退款按钮在哪(催商家退款怎么说合适)

  • qq里matey什么意思(mqq是什么意思中文)

    qq里matey什么意思(mqq是什么意思中文)

  • 功能升级中,暂不支持修改(功能升级中暂时无法使用什么意思)

    功能升级中,暂不支持修改(功能升级中暂时无法使用什么意思)

  • 60v充电器绿灯一闪一闪(60v充电器绿灯亮没输出)

    60v充电器绿灯一闪一闪(60v充电器绿灯亮没输出)

  • ios可以降系统么(苹果可以不可以降系统)

    ios可以降系统么(苹果可以不可以降系统)

  • qq的匹配聊天怎么弄(qq的匹配聊天怎么没了)

    qq的匹配聊天怎么弄(qq的匹配聊天怎么没了)

  • 电脑管家打不开(华为电脑管家打不开)

    电脑管家打不开(华为电脑管家打不开)

  • 微麦投影仪怎么连接手机(微麦投影仪怎么用)

    微麦投影仪怎么连接手机(微麦投影仪怎么用)

  • 优酷怎么看什么时候到期(优酷怎么看什么时候充的会员)

    优酷怎么看什么时候到期(优酷怎么看什么时候充的会员)

  • 快手b类违规能上热门吗(快手b类违规能解封吗)

    快手b类违规能上热门吗(快手b类违规能解封吗)

  • 苹果x能单独换外屏么(苹果x能单独换屏幕吗)

    苹果x能单独换外屏么(苹果x能单独换屏幕吗)

  • 电脑截不了图怎么回事(电脑截不了图怎么办?)

    电脑截不了图怎么回事(电脑截不了图怎么办?)

  • 华为折叠屏手机mate x上市了吗(华为折叠屏手机2023款价格)

    华为折叠屏手机mate x上市了吗(华为折叠屏手机2023款价格)

  • word文字底纹怎么设置(word文字底纹怎么设置深色25%)

    word文字底纹怎么设置(word文字底纹怎么设置深色25%)

  • 苹果8访问限制在哪里(苹果8访问限制无法退出ID)

    苹果8访问限制在哪里(苹果8访问限制无法退出ID)

  • 显卡怎么安装 台式机(显卡怎么安装驱动)

    显卡怎么安装 台式机(显卡怎么安装驱动)

  • 华为martl00是什么型号(华为MARTL00是什么型号)

    华为martl00是什么型号(华为MARTL00是什么型号)

  • oppo手机关机方法(oppo手机关机方法有几种)

    oppo手机关机方法(oppo手机关机方法有几种)

  • 抽象类和接口有什么异同(抽象类和接口有哪些)

    抽象类和接口有什么异同(抽象类和接口有哪些)

  • 12123申请挪车收费吗(12123挪车申请中没反应)

    12123申请挪车收费吗(12123挪车申请中没反应)

  • 荣耀9x自带钢化膜吗(荣耀9x的钢化膜)

    荣耀9x自带钢化膜吗(荣耀9x的钢化膜)

  • 小米9如何开启usb调试(小米9如何开启小窗口)

    小米9如何开启usb调试(小米9如何开启小窗口)

  • 三星s9发热严重怎么办(三星s9发热严重怎么解决)

    三星s9发热严重怎么办(三星s9发热严重怎么解决)

  • 魅族是华为旗下的吗(魅族和华为是什么关系)

    魅族是华为旗下的吗(魅族和华为是什么关系)

  • 快手买东西怎么查物流(快手买东西怎么找官方客服)

    快手买东西怎么查物流(快手买东西怎么找官方客服)

  • 抖音上灵魂出窍怎么拍的(抖音灵魂出窍特效在哪)

    抖音上灵魂出窍怎么拍的(抖音灵魂出窍特效在哪)

  • 六税一费优惠政策
  • 人工费用分配表分配率
  • 简易征收 抵扣进项
  • 怎样进行房产置换的账务处理
  • 以实物抵债账务协议
  • 预缴增值税销售额
  • 合伙企业缴纳税款时间
  • 含税和不含税哪个对卖方有利
  • 经济法基础企业所得税好难
  • 完税凭证是什么
  • 个体工商户3万以下免个人经营所得税吗
  • 运输发票抵扣税率是有多少?
  • 增值税的计征方法有哪些
  • 原材料盘亏会计分录怎么做
  • 购买预付卡账务处理
  • 平销返利税率
  • 将自产产品无偿赠送税务处理
  • 没有进项发票的货物能算成本吗
  • 一般纳税人怎么算税
  • mac环境搭建
  • php实战
  • 非上市公司股票期权个人所得税
  • 申报个人所得税是按应发工资还是实发工资
  • 应纳税额等于啥
  • 退回以前年度多交的附加税怎么做分录
  • grad_cam
  • php使用( )关键字来创建对象
  • 销售多余的材料
  • CUDA版本选择
  • 2022年电子设计大赛F题
  • vue面试题2020
  • 二元运算例子
  • 模型的内容
  • 网上学电脑的软件
  • 企业预收账款缴纳个税吗
  • PhoneGap was accuriqed by adobe
  • 帝度官网 说明书
  • pytest unittest
  • 一般纳税人支付的增值税计入成本吗
  • 电子税务局网开电子发票
  • 房屋租赁费需要分摊吗
  • 一般纳税人的账务处理分录
  • 公司优秀党员奖章
  • 什么叫生活补助
  • 公司买口罩
  • 进项税额转出后续处理
  • 签合同的名称和内容
  • 红冲发票显示发票状态不正常
  • 怎么冲减多计提的增值税
  • 从事小额零星经营业务的个人,其支出
  • 企业对疫情
  • 会计凭证装订后应当加贴封条
  • 应交增值税贷方余额表示什么
  • 零售商品销售的具体核算步骤
  • 电脑开机显示xp后无反应
  • centos安装ntfs 3g
  • centos vim编辑器
  • kali linux 视频教程
  • 安装solaris11
  • 电脑win7怎么样
  • win8的系统
  • xp 跳过 chkdsk
  • optimize error by column count
  • winxp打开任务管理器的快捷键
  • mac book air安装
  • win7右下角小喇叭
  • linux !!
  • iframe语法
  • 拼图java代码
  • 适合当前端的手机
  • 怎么学node.js
  • jquery解析html文本
  • nodejs python交互
  • jquery自定义表单
  • app开发指南
  • 河南省发票查询真伪
  • 定额发票增值税怎么申报
  • 出口退税的管理办法
  • 2011年退伍军人证
  • 即使我单位是免税单位,签订合同时,也需要贴
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设