HTTP中GET與POST的本質區別

首先GET和POST是什麼?他們是HTTP協議中兩種發送請求的方式。HTTP是什麼?HTTP是基於TCP與IP的關於數據如在萬維網中如何通信的協議。HTTP的底層是TCP/IP,也就是說GET與POST都是TCP鏈接。GET與POST做的事是一樣的,都可以傳輸數據。因此GET與POST在本質上沒有區別,而真正的區別在於TPC鏈接的不同,由於在萬維網中各個瀏覽器以及服務器的限制,導致他們在引用過程中體現的不同。

那麼真正的區別在哪呢?我認爲真正的區別在於TCP數據包GET方式產生一個TCP數據包,而POST方式會產生兩個TCP數據包。詳細的說,對於GET請求,瀏覽器會把http header和data一併發送出去,服務器響應200ms後返回數據。而POST請求,瀏覽器會先發送http header服務器響應100 continue,瀏覽器再發送data,服務器響應200ms後再返回數據。

但是呢,在網絡條件好的情況下,發送一次和發送兩次數據包的時間差是可以直接忽略無視的。只有在網絡條件差的時候,發送兩次數據包在TCP的驗證數據上會更加的穩定。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章