Session與Cookie的區別與聯絡

2021-08-21 04:44:59 字數 585 閱讀 1521

客戶第一次傳送請求給伺服器,此時伺服器產生乙個唯一的sessionid,並返回給客戶端(通過cookie),儲存於客戶端的記憶體中,並與乙個瀏覽器視窗對應著,由於http協議的特性,這一次連線就斷開了。

以後此客戶端再傳送請求給伺服器的時候,就會在請求request中攜帶cookie,由於cookie中有sessionid,所以伺服器就知道這是剛才那個客戶端。

舉個簡單例子就像人們去超市購物,去存包,第乙個去的時候(客戶第一次傳送請求給伺服器),超市會給你乙個號碼牌(此時伺服器產生乙個唯一的sessionid,並返回給客戶端(通過cookie)),你可以在你自己的櫃子裡存東西(在伺服器屬於此客戶的記憶體區域存資料),下次你再去的時候,拿著這個號碼牌(請求request中攜帶cookie),超市就知道哪些東西是你的,然後給你取出來,如果你幾天都沒去取(session失效了,在伺服器端配置),你再去的時候東西就拿不到了。如果你把這個號碼牌丟了(剛才的cookie失效了,比如你重啟電腦,剛才存於記憶體中sessionid也就丟了),再去拿東西,當然無法定位了,也就拿不到東西了。如果是新開啟乙個瀏覽器的情況,那就像是又乙個人去超市存東西一樣,你的東西跟他的東西是兩碼事,互不影響,他有他自己的sessionid,你有你自己的。

cookie與session的關聯

前提 cookie沒有被禁用。當用瀏覽器登入到某 伺服器時,先找對應的cookie檔案,當首次訪問是當然沒有cookie檔案,所以在請求頭部中沒有cookie的內容,即在請求頭部中沒有類似cookie jsessionid 的內容,這時當請求到達伺服器後,伺服器看請求頭中沒有jsessionid值,...

session與cookie的區別

讓我們用幾個例子來描述一下cookie和session機制之間的區別與聯絡。筆者曾經常去的一家咖啡店有喝5杯咖啡免費贈一杯咖啡的優惠,然而一次性消費5杯咖啡的機會微乎其微,這時就需要某種方式來紀錄某位顧客的消費數量。想象一下其實也無外乎下面的幾種方案 1 該店的店員很厲害,能記住每位顧客的消費數量,...

session與cookie的區別

1 session儲存在伺服器,客戶端不知道其中的資訊 cookie儲存在客戶端,伺服器能夠知道其中的資訊。2 session中儲存的是物件,cookie中儲存的是字串。3 session不能區分路徑,同乙個使用者在訪問乙個 期間,所有的session在任何乙個地方都可以訪問到。而cookie中如果...