Form提交的几种数据格式

form属性简述

<form action="url" name="name" method="get/post" enctype="" target=""></form>
  • form表单拥有5个比较重要的属性:action,name,method,enctype,target。
  • enctype:表单数据提交时使用的编码类型,默认使用"application/x-www-form-urlencoded",如果是使用POST请求,则请求头中的content-type指定值就是该值。如果表单中有上传文件,编码类型需要使用"multipart/form-data"类型,才能完成传递文件数据。
  • 值得注意的是:enctype为form表单数据的编码格式,Response Header下的content-type为Http传输的数据的编码格式。请各位务必区分。

四种常见的 POST 提交数据方式

  • application/x-www-form-urlencoded 默认选择方式
    首先,Content-Type 被指定为 application/x-www-form-urlencoded;其次,提交的数据按照 key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。

  • multipart/form-data
    我们使用表单上传文件时,必须让 <form> 表单的 enctype 属性值等于 multipart/form-data。

  • application/json
    现在越来越多的人把它作为请求头,用来告诉服务端消息主体是序列化后的 JSON 字符串。由于 JSON 规范的流行,除了低版本 IE 之外的各大浏览器都原生支持 JSON.stringify,服务端语言也都有处理 JSON 的函数,使用 JSON 不会遇上什么麻烦。这种方案,可以方便的提交复杂的结构化数据,特别适合 RESTful 的接口。
    上传数据格式如下:


    image.png
  • text/xml
    它是一种使用 HTTP 作为传输协议,XML 作为编码方式的远程调用规范。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。