2.知識點#contenttype 爲application/x-www-form-urlencoded 和 application/json 區別和說明

說明:這兩個都是發送請求的格式說明

 

1.application/x-www-form-urlencoded

在Form元素的語法中,EncType表明提交數據的格式 用 Enctype 屬性指定將數據回發到服務器時瀏覽器使用的編碼類型。 下邊是說明: application/x-www-form-urlencoded: 窗體數據被編碼爲名稱/值對。這是標準的編碼格式。 multipart/form-data: 窗體數據被編碼爲一條消息,頁上的每個控件對應消息中的一個部分。 text/plain: 窗體數據以純文本形式進行編碼,其中不含任何控件或格式字符。
 補充
form的enctype屬性爲編碼方式,常用有兩種:application/x-www-form-urlencoded和multipart/form-data,默認爲application/x-www-form-urlencoded。 當action爲get時候,瀏覽器用x-www-form-urlencoded的編碼方式把form數據轉換成一個字串(name1=value1&name2=value2...),然後把這個字串append到url後面,用?分割,加載這個新的url。 當action爲post時候,瀏覽器把form數據封裝到http body中,然後發送到server。 如果沒有type=file的控件,用默認的application/x-www-form-urlencoded就可以了。 但是如果有type=file的話,就要用到multipart/form-data了。瀏覽器會把整個表單以控件爲單位分割,併爲每個部分加上Content-Disposition(form-data或者file),Content-Type(默認爲text/plain),name(控件name)等信息,並加上分割符(boundary).

 

 

2. application/json

 有的時候發現  ajax請求中  content-type:application/json,這樣也能在後臺接受前臺提交的數據,其實這個時候前端提交的數據是 json格式的字符串,後端要用@requestbody註解來接收

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章