當今的技術領域,開發者人數最為之多的群體便是web領域,與之相關崗位的包括前端工程師,後台工程師,移動端開發工程師等等。然而由於受時代浮躁氛圍的影響,許多開發者對最為基礎的HTTP協議都不甚了解,這也正是本篇文章的目的--簡單總結一下 了解HTTP協議之前你需要掌握的一些基礎知識,基本術語等等。
"協議定義了兩個或多個通信實體間交換報文的格式和次序,以及在報文傳輸/接收或其他方面所采取的動作。"--《計算機網絡--自頂向下方法》 我們可以把協議理解為規則的集合
(圖:人類交流的協議與網絡協議對比)
HyperText Transfer Protocol(超文本傳輸協議)的縮寫,是建立在web應用層的核心協議。
HyperText Markup Language(超文本標記語言)的縮寫,web頁面是由對象組成的,對象可以說就是文件,大多數web頁面包含一個基本HTML文件,可以通過URL來尋址。
浏覽器通過發送請求,獲取服務器資源,實現了HTTP的客戶端,可以稱作客戶端(Client)。其實現在許多的客戶端也是web客戶端轉制的,包括PC端和移動端。
用於存儲web對象,每個對象由URL尋址,web服務器實現了HTTP的服務器端(Server)。
Translation Control Protocol(傳輸控制協議)的縮寫,是面向連接(Connection-oriented)的傳輸層協議,HTTP協議建立在TCP協議之上,TCP協議為HTTP協議提供可靠數據傳輸服務。運行在不同機器上的進程通過向Socket(套接字)發送報文來進行通信。
socket是在應用層和傳輸層之間的一個抽象層,它把TCP/IP層復雜的操作抽象為幾個簡單的接口供應用層調用已實現進程在網絡中通信。
Uniform Resource Locator(統一資源定位符)的縮寫,不僅標識了Web 資源,還指定了操作或者獲取方式,同時指出了主要訪問機制和網絡位置。
主要格式:<協議><特定協議部分>
Uniform REsource Identifier(統一資源標識符)的縮寫,是以統一的標准化方式標示資源的字符串。
Uniform Resource Name(統一資源名稱)的縮寫,是URI的一種,用特定命名空間的名字標識資源。使用URN可以在不知道其網絡位置及訪問方式的情況下討論資源。
HTTP協議客戶端對服務器的請求方法之一。從指定的服務器中獲取數據
HTTP協議客戶端對服務器的請求方法之一。提交數據給指定的服務器處理
學習HTTP協議,大家要了解的最基本,最核心的概念就是以上這些,這些概念我會在後面的系列中逐步深入講解和分析,分享一些自己的學習經驗。
2. 辨析與理解
明白這三者,你只需要知道以下幾點:
看過好多網上的博客,都在講POST方法比GET方法安全,POST方法會加密等等。這些可以說是錯誤的說法!!
辨析GET與POST,你要明白以下幾點
3. 總結
本文主要總結和分析了網絡尤其是WEB開發者需要掌握的一些核心概念,為今後深入了解HTTP協議,網絡編程,以及對服務器端的優化,打下良好的基礎。當然,掌握這些還遠遠算不上打好基礎,要想真正掌握好計算機網絡,你還需要閱讀相關技術書籍以及大量的編程實踐,加油吧!