图片文件上传,有许多种类的协议,这段时间主要谈论的内容
类型的形式:多部分/表单数据;
通过FTL模板
系统的一些静态文件的
工作,前台页面是由SSI引用,当项目需要生成大量的静态shtml文件,认为应该回来的事情,但是自从我进入这家
公司,这件事就交给前台。我说不出话来。没有办法,但我是一个懒人,你不能认为它是通过ajax提交的。
基于MDN定期阅读,今天主要是表单对象来
解决多文件上传协议。
HTTPS: / /开发商Mozilla。org /我们/
文档/ / /表单DOM XMLHttpRequest
似乎一切
都是完美的,但在文件
方法中,它只能在Chrome级别
运行,无法实现图像上传,一般普通文件可以通过点对象实现。
下面是一些实现的方法,一个探索过程
1。查找一天的一半,URL转到文件对象方法,所有失败。
2.html5文件方向
以HTML5文件的一个例子开始
HTTPS: / /开发商Mozilla。org /我们/ / /有DOM文档
在这个例子中,印刷ofrevent.target.result找到数据:图像/ JPEG;base64, / / / 2wbdaaudbaqeawuebaqfbq 9j 4aaqskzjrgabaqeasabiaad…
原来是Base64编码数据
当您看到顶部的编码数据时,请考虑是否
支持这个对象,代码如下所示
VaR FD =新表单();
Fd.append('my-file ',新的斑点({数据:图像/ JPEG;base64, / / / 2wbdaaudbaqeawuebaqfbq 9j 4aaqskzjrgabaqeasabiaad…},{类型:图像/ JPEG})))
Fd.append('my-file ',新的斑点({数据:图像/ JPEG;base64, / / / 2wbdaaudbaqeawuebaqfbq 9j 4aaqskzjrgabaqeasabiaad…},{类型:图像/ JPEG;base64})));
B.。认为Base64编码,也可以解码的方法
Base64编码和解码的一个例子是在网上找到的。
Fd.append('my-file ',新的斑点({新base64()。Decode( / / / 2wbdaaudbaqeawuebaqfbq 9j 4aaqskzjrgabaqeasabiaad…)},{类型:图像/ JPEG})));
捕获
文件传输和ajax
发现正常数据不一样,肯定失败了。
3。
浏览器页面级别是为了安全,似乎所选文件的
操作是由您自己手动操作的。
HTTPS: / /开发商Mozilla。org /我们/文档/ / /表单DOM XMLHttpRequest / using_formdata_objects
复制代码代码如下:fd.append('my-file ',document.queryselector(选择器)。文件{ 0 })
事实上,它一开始就被文件API误导了,并且一直认为它是页面级的。
突然,人们发现最后一个
地址的顶部是使用的方法。
后来,通过添加
功能的油猴
插件,并支持Chrome级别文件方法,我们可以轻松地上传
照片。
以上是本文的全部内容,希望大家能喜欢。