Content-Type 的值類型 對比

一、Content-Type 的值類型

1、application/x-www-form-urlencoded :

註解:窗體數據被編碼爲:名稱/值對。-----標準的編碼格式

作用:默認方式在請求過程中會對數據進行序列化處理,以鍵值對的形式的方式發送到服務器    ?key1=value1&key2=value2

優點:所有瀏覽器都支持

傳遞過程:

1. 前端以鍵值對的形式傳遞

2. application/x-www-form-urlencoded會通過 EncodeURL() 對其進行編碼,給到服務端

3. 服務器通過 URLdecoder.decode() 進行解碼,

4. 後端通過request.getParameter() 獲取參數

 

2、application/json

註解:消息主體是序列化後的 JSON 字符串

作用:通知服務器請求主體是以 json 格式的字符串,服務端會以 進行對 json 字符串解析

優點:前端人員不需要關注數據結構的複雜度、只需要傳遞標準的 json 格式即可

傳遞過程:

1. 前端將 json 對象轉化爲 字符串或者二進制 (此處分爲2種傳輸數據格式)

2. 服務器對 json 字符串不進行編碼

3. 後端通過 2種方式接收,

  • 字符流取值-request.getReader() 
  • 字節流取值-request.getinputStream()

 

3、multipart/form-data

註解:主要用於傳輸文件、將文件轉換成二進制數據進行傳輸,不設計轉碼問題,常見的媒體格式上傳

作用:通知服務器請求是需要上傳文件格式類型,服務器不進行編碼

優點:前端人員不需要關注數據結構的複雜度、只需要傳遞標準的 文件 格式即可

傳遞過程:

1. 前端 上傳文件,得到文件格式的參數

2. 服務器對 文件格式參數不進行編碼

3. 後端通過 request.getInputStream() 取值

 

4、text/plain

註解:數據以純文本形式進行編碼,其中不包含任何控件或格式字符, 大部分情況不會使用,這裏不做過多註解

 

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