首页 > 代码库 > 四种常用的post数据提交方式

四种常用的post数据提交方式

application/x-www-form-urlencoded

  这是默认的post传输方式,用url转码的方法,让数据以key1=val1&key2=val2的方式传输。此方式的数据形式与get方式一样。

multipart/form-data

  这个也是常见的方式,最常用于传输图片和其他文件。下面是一段数据事例:

POST http://www.example.com HTTP/1.1
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryrGKCBY7qhFd3TrwA

------WebKitFormBoundaryrGKCBY7qhFd3TrwA
Content-Disposition: form-data; name="text"

title
------WebKitFormBoundaryrGKCBY7qhFd3TrwA
Content-Disposition: form-data; name="file"; filename="chrome.png"
Content-Type: image/png

PNG ... content of chrome.png ...
------WebKitFormBoundaryrGKCBY7qhFd3TrwA--

  其中的的“------WebKitFormBoundaryrGKCBY7qhFd3TrwA”是用来分割数据的边界,是浏览器自动生成的随机字符串,传输到后台时会自动识别为边界,不需要作特别处理。此方式对文件有良好的转码,体积比较小。

application/json

  Angular中默认以这种方式传输。Jquery的ajax传输时需要把data对象JSON序列化,调用JSON.stringify(data)。一般的后台语言对这种方式都支持,且JSON格式有利于调试工具的查看,推荐使用这种方式。

text/xml

  臃肿且不好调试,比较少使用。

推荐阅读文章:四种常见的 POST 提交数据方式

四种常用的post数据提交方式