图片文件上传,有很多种协议的,这次主要讲的是“Content-Type:multipart/form-data;”的形式。

在工作中前台一些静态文件是通过FTL模版系统,前台页面通过SSI进行引用的,项目开发的时候就需要生成大量的静态SHTML文件了,本来觉得应该是后台的事情,可是自从我进这公司,这快东西就交给了前端~~我表示无语,没办法就按着习惯来吧,但我是个懒人,就想着能不能通过ajax提交呢
基于平时对MDN的翻阅,今天主要是FormData这个对象解决多文件上传的协议。
https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest/FormData
似乎一切都完美了,但是在File方法,只能在chrome级别上才能运行。图片上传没办法实现,一般普通文件可以通过Blob对象实现
下面通过了一些方法来实现,一个探索过程
1.找了半天,URL转为File对象的方法,都失败了。。。
2.HTML5 File方向
a.通过HTML5 File的例子,开始
https://developer.mozilla.org/en-US/docs/DOM/FileReader
在例子里面,打印 oFREvent.target.result 只是找到了"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQ..."
原来是base64编码的数据
看到上边的编码数据,就想到Blob对象是不是支持啊,代码如下
var fd = new FormData();
fd.append('my-file', new Blob(["data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQ..."],{type:"image/jpeg"}));
fd.append('my-file', new Blob(["data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQ..."],{type:"image/jpeg;base64"}));
b..想到了base64是编码过了,通过方法解码下是不是可以
网上找了一段base64编码解码的例子,套了一下
fd.append('my-file', new Blob([new Base64().decode('/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQ...')],{type:"image/jpeg"}));
抓包发现,正常传输文件和ajax数据不一样,那肯定是失败了
3.浏览器页面级别为了安全,看来选择文件的操作是要自己手动下了
https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest/FormData/Using_FormData_Objects
复制代码 代码如下:fd.append('my-file',document.querySelector(Selector).files[0])
其实一开始还是被File api给误导了,一直以为是页面级别的
忽然发现,最后一个地址里面最上面就是用的这种方法。。看来还是看东西不认真,走了些弯路。
后记,通过向油猴插件那样,加入函数,支持chrome级别的File方法,我们就可以方便的上传照片了。
以上所述就是本文的全部内容了,希望大家能够喜欢。
相关推荐:
AI网站开发与代码创新:引领未来数字化变革的关键,ai ay规则
AI代写文章:高效创作的新风尚
SEO模板:提升网站排名,助你快速抢占搜索引擎流量高地,选择seo职业缺点
GPT在什么时候被人熟知的?从技术突破到广泛应用的背后故事,ai商业新思维ai课程
ChatGPT中文版下载,开启智能对话新体验,婚纱ai男
SEO教研:数字营销新趋势,提升网站流量与转化率的关键,齐鲁证券网站建设
seo自己做什么,自己做seo需要花钱吗 ,ai850775
为什么要监控SEO效果,国家为什么要监控个人 ,抚顺ai系统
ChatGPT目前,我无法查看或打开附件,但我依然能为你提供全面的帮助,苹果ai谷歌ai
SEO特点与实施策略:提升网站流量与排名的关键,定西抖音seo价格查询
seo软件工具,seo软件是什么 ,AI妆容
SEO但是,这些常见误区你真的知道吗?,凤岗网站建设开发
SEO努力:提升网站排名的关键策略,网站建设微企动力
ChatGPT崩一次多久修复?揭秘背后的技术与保障,ai1818818
AI代谢文章:从灵感到成果的创作革命
ChatGPT3.5最新版:智能对话新纪元,带你进入AI的未来世界,ai苔藓生长
ChatGPT为什么网址打不开?原因分析与解决方法,文档审核ai
SEO搜索关键词是什么意思?全方位解析关键词优化的核心要素,lol ai图片
SEO首选:如何通过优化网站提升排名和流量,简单的网站优化软件
ChatGPT空白对话:释放创意,开启智能对话的新世界,ai重庆南坪
SEO代做:让你的企业轻松登顶搜索引擎,快速提升曝光率,seo 提高注册量
AI免费生成文章的软件:轻松创作的秘密武器
SEO抢权:如何在竞争激烈的市场中占得先机,正规网站建设口碑好
AI撰写率:让创作变得更高效,助力内容产业腾飞,人力ai
seo网站反链是什么,网站反链怎么做 ,ai插画头像卡通
SEO优化需要花钱吗?从零起步,如何让SEO成为企业的“隐形财富”,字体如何往ai里面倒
SEO通过-如何通过SEO优化让你的业务在搜索引擎中脱颖而出,保定网站建设推广专家
丹东抖音seo是什么,抖音seo引流 ,ai工具编写作业指导书
AI一键生成文章免费版:颠覆写作新体验
SEO排位:如何通过精准策略提升网站排名,获得流量与转化,林海网络推广营销
AI撰写工具的无限可能,让内容创作更高效、更精彩!
ChatGPT打不开了吗?如何快速解决常见问题,恢复顺畅体验!,ai13212511845
ChatGPT无法完全显示?你可能忽略了这些令人惊讶的细节!,朵朵ai绘画
SEO场景下的数字营销:如何通过精准优化提升网站流量,陕西融发建设集团网站
seo相当于什么职业,seo相当于什么职业类别 ,usatisfy ai
什么是蜘蛛弛?揭秘这个SEO优化背后的神秘工具,南沙seo优化排名价格
智能AI写文章:高效创作新风尚
怎么用AI生成文章免费版,高效创作从此开始!
SEO数量-如何提升你的网站排名与流量?,射阳seo优化五星服务
好用的AI写作工具,提升写作效率与创意的最佳选择
个性化广告:新时代营销的秘密武器,建设经营性网站怎么记账
BingAdapter设置数据后没有显示数据?解决方案在这里!,ai中如何把图变形
如何查文章AI率?全面解析AI文章检测工具及技巧
seo资源指的是什么,seo资料 ,绿眼AI
SEO自行:提升网站流量的秘密武器,邹平县个人网站建设建议
SEO包月服务:助力企业提升网站排名与流量的长期利器,网站建设流程 报读文库
ChatGPT回答是空白的背后,究竟隐藏着什么秘密?,如何用ai写作来赚钱
SEO优化中怎么找关键词:全面解析与实战技巧,ai2002.4.8
在线AI文章生成:内容创作新革命
优化百:开启数字时代的智能营销新时代,湘潭seo优化报价表