http 請求

新公司,新工做 先後端分離,最近改造老功能 ,和前段進行交流溝通,對http請求 有了新的感覺html

老接口採用(post)鍵值對的形式傳參數:vue

後臺接收方式:java

    @RequestMapping("customizeChaProduct")
    @ResponseBody
    @Transactional
    public Map<String, Object> customizeChaProduct(HttpServletRequest request, HttpServletResponse response) 

     。。。。。json

因爲新需求,須要傳值一個對象的數組,格式以下:後端

[{"tabName": "1","showOrNot": "Y"},{"tabName": "2","showOrNot": "Y"}]數組

前段採用的技術 vue.js  :傳參數的形式有兩種一、param,二、data 瀏覽器

因爲 以前採用的的param 後臺接收 鍵值對服務器

新的數據的採用data 形式,致使後臺沒法接入 app

 

我對Content-type 的理解前後端分離

content-type(內容格式)

postman 中經常使用的格式以下 :

 

form-data、x-www-form-urlencoded、raw、binary

form-data

就是http請求中的multipart/form-data,它會將表單的數據處理爲一條消息,以標籤爲單元,用分隔符分開。既能夠上傳鍵值對,也能夠上傳文件

x-www-form-urlencoded

  application/x-www-from-urlencoded,會將表單內的數據轉換爲鍵值對,好比,name=java&age = 23

 

raw

          能夠上傳任意格式的文本,能夠上傳text、json、xml、html等

binary

Content-Type:application/octet-stream,從字面意思得知,只能夠上傳二進制數據,

 

HTTP協議(RFC2616)採用了請求/響應模型。客戶端向服務器發送一個請求,請求頭包含請求的方法、URI、協議版本、以及包含請求修飾符、客戶 信息和內容的相似於MIME的消息結構。服務器以一個狀態行做爲響應,相應的內容包括消息協議的版本,成功或者錯誤編碼加上包含服務器信息、實體元信息以 及可能的實體內容。 

一般HTTP消息由一個起始行,一個或者多個頭域,一個只是頭域結束的空行和可選的消息體組成。HTTP的頭域包括通用頭,請求頭,響應頭和實體頭四個部分。每一個頭域由一個域名,冒號(:)和域值三部分組成。域名是大小寫無關的,域 值前能夠添加任何數量的空格符,頭域能夠被擴展爲多行,在每行開始處,使用至少一個空格或製表符。 

請求消息和響應消息均可以包含實體信息,實體信息通常由實體頭域和實體組成。實體頭域包含關於實體的原信息,實體頭包括Allow、Content- Base、Content-Encoding、Content-Language、 Content-Length、Content-Location、Content-MD五、Content-Range、Content-Type、 Etag、Expires、Last-Modified、extension-header。 
Content-Type是返回消息中很是重要的內容,表示後面的文檔屬於什麼MIME類型。Content-Type: [type]/[subtype]; parameter。例如最多見的就是text/html,它的意思是說返回的內容是文本類型,這個文本又是HTML格式的。原則上瀏覽器會根據Content-Type來決定如何顯示返回的消息體內容。 

type有下面的形式  Text:用於標準化地表示的文本信息,文本消息能夠是多種字符集和或者多種格式的;  Multipart:用於鏈接消息體的多個部分構成一個消息,這些部分能夠是不一樣類型的數據;  Application:用於傳輸應用程序數據或者二進制數據;  Message:用於包裝一個E-mail消息;  Image:用於傳輸靜態圖片數據;  Audio:用於傳輸音頻或者音聲數據;  Video:用於傳輸動態影像數據,能夠是與音頻編輯在一塊兒的視頻數據格式。 

相關文章
相關標籤/搜索