HTTP請求與服務器響應流程


  1. HTTP 簡介

    1.1定義

    1.2 請求/響應報文格式

    1.3請求方式--GET/POST     狀態碼

    1.4 響應狀態

  2. HTTP請求,瀏覽器做了什么, 服務端處理解析過程

 

1:HTTP簡介

  1.1

  HTTP(HyperText Transfer Protocol,超文本傳輸協議)最早就是計算機與計算機之間溝通的一種標准協議,這 種協議限制了通訊內容的格式以及各項內容的含義。

  隨着時代的發展,技術的變遷,這種協議現在廣泛的應用在各種領域,也不僅僅局限於計算機與計算機之間,手 機、電視等各種智能設備很多時候都在使用這種協議通訊,所以一般現在稱 HTTP 為端與端之間的通訊協議。

 

  Web 屬於 B/S 架構的應用軟件,在 B/S 架構中,瀏覽器與服務器溝通的協議就是 HTTP 協議,作為一個合格的 Web 開發者,了解 HTTP 協議中約定的內容是一門必修課。

  應用軟件架構一般分為兩類: B/S 架構:Browser(瀏覽器) ←→ Server(服務器),這種軟件都是通過瀏覽器訪問一個網站使用, 服務器提供數據存儲等服務。 C/S 架構:Client(客戶端) ←→ Server(服務器),這種軟件通過安裝一個軟件到電腦,然后使用, 服務器提供數據存儲等服務。

  1.2請求報文的格式

  請求行    ---》請求方式 請求路徑 HTTP協議版本  (一般GET請求主觀上都是去‘拿東西’,所以使用需要看情況)

  請求頭    ---》客戶端想要告訴服務端的一些額外信息

  空行

  請求體   ---》客戶端想要發送給服務端的數據正文

    

  

   1.3請求的方式GET/POST    狀態碼

  根據HTTP標准,HTTP請求可以使用多種請求方法。

  HTTP1.0定義了三種請求方法: GET, POST 和 HEAD方法。

  HTTP1.1新增了五種請求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

具體的請查看官方文檔:

  http://www.runoob.com/http/http-methods.html

  http://www.w3school.com.cn/tags/html_ref_httpmethods.asp

 

   狀態碼:了解即可

  狀態代碼由三位數字組成,第一個數字定義了響應的類別,且有五種可能取值。

  1xx:指示信息 —— 表示請求已接收,繼續處理。

  2xx:成功 —— 表示請求已被成功接收、理解、接受。

  3xx:重定向 —— 要完成請求必須進行更進一步的操作。

  4xx:客戶端錯誤 —— 請求有語法錯誤或請求無法實現。

  5xx:服務器端錯誤 —— 服務器未能實現合法的請求。

  常見狀態代碼、狀態描述的說明如下。

  200 OK:客戶端請求成功。

  400 Bad Request:客戶端請求有語法錯誤,不能被服務器所理解。

  401 Unauthorized:請求未經授權,這個狀態代碼必須和 WWW-Authenticate 報頭域一起使用。

  403 Forbidden:服務器收到請求,但是拒絕提供服務。

  404 Not Found:請求資源不存在,舉個例子:輸入了錯誤的URL。

   500 Internal Server Error:服務器發生不可預期的錯誤。 503 Server Unavailable:服務器當前不能處理客戶端的請求,一段時間后可能恢復正常。

 

 

2. HTTP請求,瀏覽器做了什么, 服務端處理解析過程

  下面這張圖我覺得比任何文字描述都清晰了,我這里就不再做詳細介紹了,此圖根據不同的操作系統,會有不同的概念,此為:Windows下的Apache+PHP環境。

 

     結語:以上過程僅是個人理解,或許有錯誤的地方,也或者有還未理解到的層面,如果看到有錯誤或者有所指點的還希望不吝賜教指正!抱拳,感謝!O(∩_∩)O哈哈~附上個人博客:https://dobinspark.com.cn/

  

 


免責聲明!

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



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