Http(s)是先後端交互的主要方式之一,交互技術主要有:Ajax(XMLHttpRequest)、Fetch、地址跳轉(window.open、location.href)。Http(s)與後臺交互傳遞數據的部分有:請求網址、請求頭、請求主體、響應頭、響應主體前端
請求網址是經過pathname或search進行傳遞數據給後端,缺點就是:1.暴露數據信息 ,2.交互數據有長度限制,但也經常使用於解決地址跳轉、受權回調、文件受權下載等後端
請求頭部分傳遞給後端主要是一些輔助數據或固定數據,例如userAgent、cookies、token等,如每次交互都須要帶上的數據(sessionId等)會放在Cookie請求頭上,瀏覽器會在請求上自動帶上這些數據瀏覽器
在使用POST、PUT方法時,會有請求主體,請求主體適用於傳遞大量數據和自定義數據,大部分狀況下業務數據都是經過這種方式傳遞給後臺cookie
響應頭主要是後臺返回給前端的一些輔助數據,例如set-cookie、server、version等session
響應主體是前端主要解析的數據,返回主要的業務數據,內容格式有:網頁內容、JavaScript腳本、Css樣式、文件二進制等server
本質上請求數據不管是放在請求網址、請求頭仍是請求主體,其實都是無差異的,而放在不一樣請求位置上是由於這些位置有不一樣的特色(如cookie會每次請求都自動帶上、請求網址有長度限制),一樣響應數據也是如此。token