原创 真正“搞”懂HTTP協議13之HTTP2

  在前面的章節,我們把HTTP/1.1的大部分核心內容都過了一遍,並且給出了基於Node環境的一部分示例代碼,想必大家對HTTP/1.1已經不再陌生,那麼HTTP/1.1的學習基本上就結束了。這兩篇文章,我會和大家一起,學習一下HTTP/

原创 真正“搞”懂HTTP協議14之HTTP3

  我們前一篇學習了HTTP/2,相比於HTTP/1,HTTP/2在性能上有了大幅的改進,但是HTTP/2因爲底層還是基於TCP協議的,雖然HTTP/2在應用層引入了流的概念,利用多路複用解決了隊頭阻塞的問題,但是在TCP中隊頭阻塞的問題仍

原创 真正“搞”懂HTTP協議12之緩存代理

  我們在前兩篇的內容中分別學習了緩存和代理,大致瞭解了緩存有哪些頭字段,代理是如何服務於服務器和客戶端的,那麼把兩者結合起來,代理緩存,也就是說代理服務器也可以緩存,當客戶端請求數據的時候,未必一定要追溯到源服務器上,代理服務器就可以直接

原创 真正“搞”懂HTTP協議11之代理服務

  代理,其實全稱應該叫做代理服務器,它是客戶端與服務器之間得中間層,本質上來說代理就是一個服務器,在HTTP的鏈路中插入的一箇中間環節,就是代理服務器啦。所謂的代理服務就是指:服務本身不生產內容,而是處於中間位置轉發上下游的請求和響應,具

原创 真正“搞”懂HTTP協議10之緩存控制

  HTTP緩存相關的問題好像是前端面試中比較常見的問題了,上來就會問什麼cache-control字段有哪些,有啥區別啥的。嗯……說實話,我覺得至少在本篇來說,HTTP緩存還算不上覆雜,只是字段稍微多了點,大家用心記一下就好啦。   緩存

原创 真正“搞”懂HTTP協議09之這個餅乾不能喫

  我們在之前的文章中介紹HTTP特性的時候聊過,HTTP是無狀態的,每次聊起HTTP特性的時候,我都會回憶一下從前輝煌的日子,也就是互聯網變革的初期,那時候其實HTTP不需要有狀態,就是個瀏覽頁面,沒有什麼需要記錄信息的地方,所以無狀態完

原创 真正“搞”懂HTTP協議08之重定向

  我們知道,用來傳輸頁面的協議就是HTTP協議,全稱是超文本傳輸協議,而瀏覽器展示的頁面則是用HTML編寫的,HTML的全稱則是超文本標記語言。你看,都叫做超文本,我在第一篇文章的時候也詳細的聊過,超文本區別於文本的本質就是文本中具有超鏈

原创 真正“搞”懂HTTP協議07之隊頭阻塞真的很煩人

  這一篇文章,我們核心要聊的事情就是HTTP的對頭阻塞問題,因爲HTTP的核心改進其實就是在解決HTTP的隊頭阻塞。所以,我們會講的理論多一些,而實踐其實很少,要學習的頭字段也只有一個,我會在最開始就講完這個頭字段,然後我們安心的去學習接

原创 真正“搞”懂HTTP協議07之body的玩法(實踐篇)

  我真沒想到這篇文章竟然寫了將近一個月,一方面我在寫這篇文章的時候陽了,所以將近有兩週沒幹活,另外一方面,我發現在寫基於Node的HTTP的demo的時候,我不會Node,所以我又要一邊學學Node,一邊百度,一邊看HTTP,最後百度的東

原创 真正“搞”懂HTTP協議06之body的玩法(理論篇)

  本來啊,本來,本來我在準備完善這個鴿了四年的系列的時候,是打算按照時間的順序來完成的,好吧。我承認那個時候考慮的稍稍稍稍稍微有些不足,就是我忽略了HTTP協議的“模塊性“。因爲雖然按照時間順序寫寫流水賬好像是個不錯的選擇,但是寫着寫着發

原创 真正“搞”懂HTTP協議05之What's HTTP?

  前面幾篇文章,我從縱向的空間到橫向的時間,再到一個具體的小栗子,可以說是全方位,無死角的覆蓋了HTTP的大部分基本框架,但是我聊的都太寬泛了,很多內容都是一筆帶過,再加上一句後面再說就草草結束了。並且我還漏了一點東西,就是HTTP本身。

原创 真正“搞”懂HTTP協議04之搞起來

  前兩篇文章,我們從空間和時間的角度都對HTTP有了一定的學習和理解,那麼基於上一篇的HTTP發展的時間順序,我會在後面的文章由淺入深,按照HTTP版本內容的更迭,一邊介紹相關字段的使用方法,一邊講解其特性和目的,並和大家一起手寫測試代碼

原创 真正“搞”懂HTTP協議03之時間穿梭

  上一篇我們簡單的介紹了一下DoD模型和OSI模型,還着重的講解了TCP的三次握手和四次揮手,讓我們在空間層面,稍稍宏觀的瞭解了HTTP所依賴的底層模型,那麼這一篇,我們來追溯一下HTTP的歷史,看一看HTTP在歷史上經歷了哪些發展和過程

原创 真正“搞”懂HTTP協議02之空間穿梭

  時隔四年,這個系列鴿了四年,我終於覺得我可以按照自己的思路和想法把這個系列完整的表達出來了。   想起四年前,那時候還是2018年的六月份,那時候我還工作不到兩年,那時候我翻譯了RFC2616的部分內容,發佈在了博客園上,並在翻譯不久後

原创 JavaScript之無題之讓人煩躁的模塊化

  我怎麼記得我好像寫過相關類型的文章,但是我找遍了我的博客沒有~那就再寫一遍吧,其實模塊化的核心內容也算不上是複雜,只不過需要整理一下,規劃一下罷了。嘻嘻。   開始寫標題的時候我就在糾結一件事情,就是,先喫喜歡喫的,還是後喫喜歡喫的,翻