讀rfc HTTP 協議


這是IETF ( 國際互聯網工程任務組(The Internet Engineering Task Force,簡稱 IETF))制定的協議之一。

互聯網工程任務組,成立於1985年底,是全球互聯網最具權威的技術標准化組織,主要任務是負責互聯網相關技術規范的研發和制定,當前絕大多數國際互聯網技術標准出自IETF。是國際互聯網業界具有一定權威的網絡相關技術研究團體。———來自百度百科

Hypertext Transfer Protocol (HTTP/1.1)

HTTP1.1是我們現在大多數瀏覽器廣泛運用的一個協議。主流,特點是長連接 (keep alive)。

無狀態應用層分布式、協作協議

OSI / RM 七層模型 (1.物理層 2.數據鏈路層 3.網絡層 4.傳輸層 5.會話層 6.表示層 7.應用層)

HTTP協議是在應用層的協議。然后這個rfc就講了超文本信息系統相關的專業術語定義和描述它安全實現。

RFC為正式有存檔的標准性試驗記錄。一旦提出來不容修改的。--來自百度百科的提煉

然而這篇文檔很長很長。我看多少是多少https://tools.ietf.org/html/rfc7230

文檔是記錄HTTP1.1規范的第一篇文檔,文檔是2014年6月的。距現在比較近的吧。更新了之前的一些發布版本

記錄了一些錯誤的更正。過時的語法的增強。

HTTP請求由客戶端向服務端發起

多數的HTTP請求由GET請求來獲取一個URI的某些資源,服務器返回一些狀態碼:

1xx.消息

100繼續,表明服務端收到,客戶端可繼續請求。就像你跟人家說話,人家邊聽邊嗯,表示聽見了。你繼續說。並不需要管。

101服務器根據你的請求切換了協議,更新或者回到老版本。你也不需要管。就像你和別人站着聊天,你說坐吧,然后你倆都坐下了。繼續聊。

2xx.成功

3xx.重定向

301永久重定向

302臨時重定向

303在其他地方找到了

304取緩存

305使用代理

4xx.客戶端異常

5xx.服務器異常

再大就是可以自定義的

rfc2616是1999年發布的,不知道為什么也是6月份。這篇就東西比較全(狀態碼啊,傳輸方式啊,一些屬性啊都有說明)https://tools.ietf.org/html/rfc2616就比7230更看起來更舒服一點。不過畢竟那么早有些技術可能已經更新啦吧。不過也是1.1的,沒差啦

上來也是一個摘要介紹了HTTP是什么。跟7230一毛一樣的話。里面鏈接的協議發布日就是更早更早以前的。甚至1.0甚至我還沒..額我已經出生了

介紹一些術語

什么是連接,什么是消息,什么是請求,什么是響應。

enh..連接:兩個項目或程序為了交流在傳輸層上建立的虛擬電路連接。

等等一些不說人話的東西,牽扯到原理我也懶得看了

就是去解決一些更古老的問題。

講一些參數的設定,歸根結底是規定協議。其中的一些屬性在瀏覽器里都能看的到,編程也能用的到。看一下多了解是有用的。

傳遞方式Method包含(協議說了區分大小寫)

  OPTIONS

  GET

  HEAD

  POST

  PUT

  DELETE

  TRACE

  CONNECT

  extension -method 

針對每一個傳遞方式都有詳細的介紹。GET還是包含比較多的用處的。

 

ps.自己心里的一些想法。對於中國人搞編程要去看那些外國制定的標准或者文檔或者說語法什么的因為不是母語而造成的一些困惑。外國人去看文章是不懂技術的時候通過文章去了解弄懂了技術含義。而正好相反,我看英語文檔是通過了解的http相關的知識去看明白這篇文章。順便學到外語這個沒毛病,拋開這一點,能獲取到的就是通過官方正式的外文文檔更加確信了原理。

 


免責聲明!

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



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