formData对象与Content-Type类型
FormData
FormData对象⽤以将数据编译成键值对,以便⽤来发送数据。其主要⽤于发送表单数据,但亦可⽤于发送带键数据(keyed data),⽽独⽴于表单使⽤。如果表单enctype属性设为multipart/form-data ,则会使⽤表单的⽅法来发送数据,从⽽,发送数据具有同样形式。
创建 FormData 对象
调⽤ append() ⽅法添加字段
var formData = new FormData();
formData.append("username", "Groucho");
formData.append("accountnum", 123456); //数字123456会被⽴即转换成字符串 "123456"
formData.append('file', file, file.name)
FormData 与 Object 的区分
都是 Object 的成员,可以理解为⼆者的格式不同。
formData是⼀种数据格式,和JSON类似。不过 js 的 Object中⽬前还不包含 JSON 这种格式。
常见的 Content-Type 类型
http协议是以ASCII码传输,建⽴在TCP/IP协议之上的应⽤层规范;
该规范把HTTP请求分为三个部分:状态⾏、请求头、消息主体。
在使⽤post进⾏请求的时候,数据发送出去,只有当浏览器解析成功才具有意义。
对于⼀般的服务器语⾔,例如php、python等都内置了⾃动解析常见数据格式的功能;⽽服务器是根据请求头 headers 中的 content-type
(1)application/x-www-form-urlencode
浏览器的原⽣form表单,如果不设置 enctype 属性,最终将会以application/x-www-form-urlencode⽅式提交数据;像jquery、Qwrap的ajax,content-type默认值都是 application/x-www-form-urlencode
(2)multipart/form-data
利⽤表单长传⽂件的时候,必须让 form 的 enctyped 等于这个值;这个格式⼀般是⽤来上传⽂件的,各⼤服务端语⾔对他也有着良好的⽀持
vuejson转对象 常见的媒体格式类型如下:
text/html : HTML格式
text/plain :纯⽂本格式
text/xml : XML格式
image/gif :gif图⽚格式
image/jpeg :jpg图⽚格式
image/png:png图⽚格式
以application开头的媒体格式类型:
application/xhtml+xml :XHTML格式
application/xml : XML数据格式
application/atom+xml :Atom XML聚合格式
application/json : JSON数据格式
application/pdf :pdf格式
application/msword : Word⽂档格式
application/octet-stream :⼆进制流数据(如常见的⽂件下载)
application/x-www-form-urlencoded : <form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到(表单默认的提交数据的格式)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论