form表单文件上传_multipart/form-data文件上传

更新日期: 2018-11-21阅读量: 3566标签: 文件

form表单的enctype属性:规定了form表单数据在发送到服务器时候的编码方式

application/x-www-form-urlencoded:默认编码方式

multipart/form-data:指定传输数据为二进制数据,例如图片、mp3、文件

text/plain:纯文本的传输。空格转换为“+”,但不支持特殊字符编码。


多部件请求体

POST / HTTP/1.1
Host: localhost
cache-control: no-cache
Postman-Token: aa6340a3-4e9b-448c-be76-e6de91258d81
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

Content-Disposition: form-data; name="file"; filename="/Users/zhuyx/Documents/test.png

Content-Disposition: form-data; name="token"

text
------WebKitFormBoundary7MA4YWxkTrZu0gW--
--------------------- 

多部件请求体:就是把每一个表单项分隔为一个部件。
表单项分为普通表单项和文件表单项
multipart/form-data类型的body为多部请求体

postman body支持类型

1、form-data

  • http请求中的multipart/form-data,会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。
  • 既可以上传键值对,也可以上传文件
  • 当上传的字段是文件,会使用content-type表明文件类型;content-disposition说明字段的一些信息。
  • 由于有boundary隔离,所以multipart/form-data既可以上传文件,也可以上传键值对。

2、application/x-www-from-urlencoded

  • 会将表单内的数据转换为键值对。

3、raw

  • 可以上传任意格式的文本,可以上传text、json、xml、html

4、binary/application/octet-stream

  • 只可以上传二进制数据,通常用来上传文件,一次只能上传一个文件。

5、multipart/form-data与application/x-www-from-urlencoded区别

  • multipart/form-data:既可以上传二进制数据,也可以上传表单键值对,只是最后会转化为一条信息
  • x-www-from-urlencoded:只能上传键值对,并且键值对都是间隔分开的。

作者:AmyZYX 
出处:http://www.cnblogs.com/amyzhu/ 


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: https://www.fly63.com/article/detial/1382

php使用 header 头下载文件

header() 函数向客户端发送原始的 HTTP 报头。认识到一点很重要,即必须在任何实际的输出被发送之前调用 header() 函数

getBasePath 函数

假如我们有这样一个javascript文件,它叫dom.js,不过随着版本的不同,它可能叫dom.1.0.js, dom.1.2.js,或者dom-1.2.js。我们要求在这个文件内写一些代码,获得它的路径,然后跟据它动态加载这个路径下的其他JS文件

利用js判断文件是否为utf-8编码

对于大文件,可以对文件内容进行抽样,对文件进行切片,这里使用 100 片。对切出的每片文件再切取前面 1kb 大小的片段,以 string 方式读取。如果 1024B 可能正好切在某个汉字编码的中间,导致以 string 方式读取时出错

前端实现文件在线预览txt,pdf,doc,xls,ppt几种格式

做法就是使用iframe标签,只需要配置src就可以,根据文件后缀判断如果是office的类型就在url前加上https://view.officeapps.live.com/op/view.aspx?src=

如何在另一个JavaScript文件中包含一个 JavaScript 文件?

JavaScript 中有没有类似于@importCSS 的东西,允许你在另一个 JavaScript 文件中包含一个 JavaScript 文件?旧版本的 JavaScript 没有导入、包含或要求,因此已经开发了许多不同的方法来解决这个问题。但是从 2015 年(ES6)开始,JavaScript 已经有了ES6 模块标准来在 Node.js 中导入模块,大多数现代浏览器也支持。

JavaScript 中如何实现大文件并行下载

相信有些小伙伴已经了解大文件上传的解决方案,在上传大文件时,为了提高上传的效率,我们一般会使用 Blob.slice 方法对大文件按照指定的大小进行切割,然后在开启多线程进行分块上传,等所有分块都成功上传后

JavaScript使用localStorage缓存Js和css文件

对于WebApp来说,将js css文件缓存到localstorage区可以减少页面在加载时与HTTP请求的交互次数,从而优化页面的加载时间.特别是当移端信号不好高延迟时优化效果还是很显见的

PHP上传文件到阿里云OSS,nginx代理访问

阿里云OSS创建存储空间Bucket(读写权限为:公共读),拿到相关配置创建 oss.php 上传类 (基于thinkPHP5),访问 oss域名地址 不可在浏览器直接访问 可用nginx 代理

js下载文件的实现方式

当后端返回的资源是链接时,此时可以使用 a 标签或者 window.location.href直接打开。在H5中,a标签新增了download 属性,包含该属性的链接被点击时,浏览器会以下载文件方式下载 href 属性上的链接。

web前端以文件流的形式导出Excel文件

一般web前端处理导出文件有两种方法:其实现原理就是先把服务端返回的数据流通过URL.createObjectURL()方法转成一个URL,这个URL是存放在内存中的,URL的生命周期是和创建的它的document绑定

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!