Http請求中Content-Type


簡介

Http Header里的Content-Type一般有這三種:

application/x-www-form-urlencoded:數據被編碼為名稱/值對。這是標准的編碼格式。
multipart/form-data: 數據被編碼為一條消息,頁上的每個控件對應消息中的一個部分。(流的方式,一般上傳)
text/plain: 數據以純文本形式(text/json/xml/html)進行編碼,其中不含任何控件或格式字符。

form的enctype屬性為編碼方式,常用有兩種:application/x-www-form-urlencodedmultipart/form-data,默認為application/x-www-form-urlencoded

當action為get時候,

瀏覽器用x-www-form-urlencoded的編碼方式把form數據轉換成一個字串(name1=value1&name2=value2...),然后把這個字串追加到url后面,用?分割,加載這個新的url。

當action為pos時候,

瀏覽器把form數據封裝到http body中,然后發送到server。 如果沒有type=file的控件,用默認的application/x-www-form-urlencoded就可以了。 
但是如果有type=file`的話,就要用到multipart/form-data了。

當action為post且Content-Type類型是multipart/form-data,瀏覽器會把整個表單以控件為單位分割,並為每個部分加上Content-Disposition(form-data或者file),Content-Type(默認為text/plain),name(控件name)等信息,並加上分割符(boundary)。

 

 

Http請求中Content-Type講解以及在Spring MVC中的應用

1.  Content-Type

  MediaType,即是Internet Media Type,互聯網媒體類型;也叫做MIME類型,在Http協議消息頭中,使用Content-Type來表示具體請求中的媒體類型信息。

類型格式:type/subtype(;parameter)? type
  主類型,任意的字符串,如text,如果是*號代表所有; 
  subtype 子類型,任意的字符串,如html,如果是*號代表所有; 
  parameter 可選,一些參數,如Accept請求頭的q參數, Content-Type的 charset參數。 

例如: Content-Type: text/html;charset:utf-8;

 常見的媒體格式類型如下:

  •     text/html : HTML格式
  •     text/plain :純文本格式      
  •     text/xml :  XML格式
  •     image/gif :gif圖片格式    
  •     image/jpeg :jpg圖片格式 
  •     image/png:png圖片格式

   以application開頭的媒體格式類型:

  •    application/xhtml+xml :XHTML格式
  •    application/xml     : XML數據格式
  •    application/atom+xml  :Atom XML聚合格式    
  •    application/json    : JSON數據格式
  •    application/pdf       :pdf格式  
  •    application/msword  : Word文檔格式
  •    application/octet-stream : 二進制流數據(如常見的文件下載)
  •    application/x-www-form-urlencoded : <form encType=””>中默認的encType,form表單數據被編碼為key/value格式發送到服務器(表單默認的提交數據的格式)

   另外一種常見的媒體格式是上傳文件之時使用的:

  •     multipart/form-data : 需要在表單中進行文件上傳時,就需要使用該格式

     以上就是我們在日常的開發中,經常會用到的若干content-type的內容格式。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM