Http請求:GET和POST區別

大神的見解

https://www.cnblogs.com/logsharing/p/8448446.html

 

  • GET在瀏覽器回退時是無害的,而POST會再次提交請求。

  • GET產生的URL地址可以被Bookmark,而POST不可以。

  • GET請求會被瀏覽器主動cache,而POST不會,除非手動設置。

  • GET請求只能進行url編碼,而POST支持多種編碼方式。

  • GET請求參數會被完整保留在瀏覽器歷史記錄裏,而POST中的參數不會被保留。

  • GET請求在URL中傳送的參數是有長度限制的,而POST沒有。

  • 對參數的數據類型,GET只接受ASCII字符,而POST沒有限制。

  • GET比POST更不安全,因爲參數直接暴露在URL上,所以不能用來傳遞敏感信息。

  • GET參數通過URL傳遞,POST放在Request body中

  • GET產生一個TCP數據包;POST產生兩個TCP數據包。

       對於GET方式的請求,瀏覽器會把http header和data一併發送出去,服務器響應200(返回數據);

      而對於POST,瀏覽器先發送header,服務器響應100 continue,瀏覽器再發送data,服務器響應200 ok(返回數據)

 

回答這些之後,再告訴面試官,其實從本質上來說,二者之間並沒有區別.HTTP只是個行爲準則,而TCP纔是GET和POST怎麼實現的基本.GET和POST本質上就是TCP鏈接,並無差別。但是由於HTTP的規定和瀏覽器/服務器的限制,導致他們在應用過程中體現出一些不同.

                                                                                                                     by .k

 

關注"編程v",每一天漲一點

STAY HUNGRY & STAY FOOLISH

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