規範把 HTTP 請求分爲三個部分:狀態行、請求頭(headers)、消息主體(entity-body).服務端一般是根據請求頭(headers)中的 Content-Type 字段來獲知請求中的消息主體是用何種方式編碼,再對主體進行解析。node
瀏覽器的原生 form 表單,若是不設置 enctype 屬性,那麼最終就會以 application/x-www-form-urlencoded 方式提交數據,提交的數據按照 key1=val1&key2=val2 的方式進行編碼.不少時候,咱們用 Ajax 提交數據時,也是使用這種方式.ios
這種方式通常用來上傳文件json
用來告訴服務端消息主體是序列化後的 JSON 字符串(用JSON.stringify處理數據)
Google 的 AngularJS 中的 Ajax 功能,以及Vue官方推薦組件axios默認就是提交 JSON 字符串axios
沒用過,略瀏覽器
'Content-Type':'application/xxxx-form'app
在瀏覽器中你能夠以下使用 URLSearchParams API:post
var params = new URLSearchParams();
params.append('param1','value1');
params.append('param2','value2');
axios.post('/foo',params);ui
使用 qs 庫來格式化數據
var qs = require('qs');
axios.post('/foo', qs.stringify({'bar':123}));this
在nodejs中,你能夠以下使用 querystring :編碼
var querystring = require('querystring');
axios.post('http://something.com/', querystring.stringify({foo:'bar'}));
'Content-Type':'application/json'
const postData=JSON.stringify(this.formCustomer);