http無狀態協議,cookie和session詳解(一)

一、HTTP無狀態協議瀏覽器

首先看百度百科給出的定義:服務器

HTTP無狀態協議,是指協議對於事務處理沒有記憶能力。缺乏狀態意味着若是後續處理須要前面的信息,則它必須重傳, 這樣致使可能每次鏈接傳送的數據量增大。另外一方面,在的服務器不須要先前信息時它的應答較快。

無狀態:指一次用戶請求時,瀏覽器、服務器沒法知道以前這個用戶作過什麼,每次請求都是一次新的請求socket

無狀態緣由:瀏覽器與服務器是使用socket套接字進行通訊的,服務器將請求結果返回給瀏覽器以後,會關閉當前的socket鏈接,並且服務器也會在處理頁面完畢以後銷燬頁面對象。url

二、簡介spa

客戶端與服務器進行動態交互的Web應用程序出現以後,HTTP無狀態的特性嚴重阻礙了這些應用程序的實現,畢竟交互是須要承前啓後的,登陸狀態、購物車都須要知道用戶作了什麼。因而,兩種用於保持HTTP鏈接狀態的技術就應運而生了,一個是Cookie,而另外一個是Session。HTTP自己是無狀態的鏈接協議,爲了支持客戶端與服務器之間的交互,咱們就須要經過不一樣的技術爲交互存儲狀態,而這些不一樣的技術就是Cookie和Session了。code

也就是說實現狀態保持主要有兩種方式:對象

  • 在客戶端存儲信息使用Cookie
  • 在服務端存儲信息使用Session

總結:blog

無狀態協議:事務

  1. 協議對於事務處理沒有記憶能力
  2. 對同一個url請求沒有上下文關係
  3. 每次的請求都是獨立的,它的執行狀況和結果與前面的請求和以後的請求時無直接關係的,它不會受前面的請求應答狀況直接影響;也不會直接影響後面的請求應答狀況。
  4. 服務器中沒有保存客戶端的狀態,客戶端必須每次帶上本身的狀態去氫氣服務器
  5. 人生若只如初見
相關文章
相關標籤/搜索