get和post,session和cookie的一些說明


 

   1.GET和POST的區別

  A. 從字面意思和HTTP的規范來看,GET用於獲取資源信息而POST是用來更新資源信息。

  B. GET提交請求的數據實體會放在URL的后面,用?來分割,參數用&連接,舉個栗子:/index.html?name=wang&login=1

  C. GET提交的數據長度是有限制的,因為URL長度有限制,具體的長度限制視瀏覽器而定。而POST沒有。

  D. GET提交的數據不安全,因為參數都會暴露在URL上。

  2.408 Request Timeout和504 Gateway Timeout的區別

  408是說請求超時,就是建立連接之后在約定的時間內客戶端沒有發送請求到客戶端到服務端。本質上原因在於客戶端或者網絡擁塞。504是網關超時,是說代理服務器把客戶端請求轉發到應用服務器后在約定的時間內沒有收到應用服務器的響應。本質上原因在於服務端的響應過慢,也有可能是網絡問題。

  3.Cookie和Session的區別和聯系

  Cookie和Session都是為了保存客戶端和服務端之間的交互狀態,實現機制不同,各有優缺點。

  首先一個最大的區別就是Cookie是保存在客戶端而Session就保存在服務端的。

  Cookie是客戶端請求服務端時服務器會將一些信息以鍵值對的形式返回給客戶端,保存在瀏覽器中,交互的時候可以加上這些Cookie值。用Cookie就可以方便的做一些緩存。Cookie的缺點是大小和數量都有限制;Cookie是存在客戶端的可能被禁用、刪除、篡改,是不安全的;Cookie如果很大,每次要請求都要帶上,這樣就影響了傳輸效率。

Session是基於Cookie來實現的,不同的是Session本身存在於服務端,但是每次傳輸的時候不會傳輸數據,只是把代表一個客戶端的唯一ID(通常是JSESSIONID)寫在客戶端的Cookie中,這樣每次傳輸這個ID就可以了。Session的優勢就是傳輸數據量小,比較安全。

  但是Session也有缺點,就是如果Session不做特殊的處理容易失效、過期、丟失或者Session過多導致服務器內存溢出,並且要實現一個穩定可用安全的分布式Session框架也是有一定復雜度的。在實際使用中就要結合Cookie和Session的優缺點針對不同的問題來設計解決方案。

 

 


免責聲明!

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



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