cookie和session的的區別以及應用場景有哪些?

時間 2021-05-30 08:16:12

1樓:朱涵俊

從能實現的功能來說,cookie,session差不多,但是cookie可以偽造,session儲存在伺服器,除非被黑了,否則不會被非法修改。因此一般來說認證資料放在session,sessionid存在cookie上。但是利用加密技術,也有人把認證資料放在cookie,對cookie加密驗證。

2樓:我的球風寫意

區別說出來太多了,簡單複習下吧。

session就是伺服器記憶體的乙個key-value的資料結構,乙個使用者獨有乙個,怎麼區別呢,就是由cookie的sessionid來儲存區別使用者的ID啦。

cookie也是key-value型別,但是key-value只能是String的,但是區別在於,它由伺服器建立,在請求後由在http的response的setCookie傳回去由使用者儲存,傳給伺服器的時候用http的request的Cookie頭儲存。乙個setCookie頭傳乙個,乙個Cookie頭穿多個。

如有不對,請指正補充。

3樓:

過幾天cookie我再寫一遍,雖然有點文不對題今天做實驗+寫搞到現在,雖然只是寫了session,過幾天再來cookie

4樓:iLRainyday

cookie是實現session的一種手段,session本質上就是一種持續的狀態,只要能保持這種狀態,手段不止一種,比如URL重寫也可以實現。

5樓:yibuyisheng

cookie 是乙個非常具體的東西,指的就是瀏覽器裡面能永久儲存的一種資料。跟伺服器沒啥關係,僅僅是瀏覽器實現的一種資料儲存功能。

session 從字面上講,就是會話。這個就類似於你和乙個人交談,你怎麼知道當前和你交談的是張三而不是李四呢?對方肯定有某種特徵(長相等)表明他就是張三。

session 也是類似的道理,伺服器要知道當前發請求給自己的是誰。為了做這種區分,伺服器就要給每個客戶端分配不同的「身份標識」,然後客戶端每次向伺服器發請求的時候,都帶上這個「身份標識」,伺服器就知道這個請求來自於誰了。至於客戶端怎麼儲存這個「身份標識」,可以有很多種方式,對於瀏覽器客戶端,大家都預設採用 cookie 的方式。

6樓:

cookie存於客戶端。

session存於伺服器端。

伺服器鑑別session需要至少從客戶端傳來乙個session_id,session_id通常存於cookie中,或是url(很少用url,主要涉及安全性和SEO的影響)

所以在工程上session離了cookie基本沒法用,但是cookie可以單獨使用,不過cookies是明文儲存,安全性很低,只使用cookie的話盜取了cookie基本就獲取了使用者所有許可權。

另外瀏覽器每次訪問網頁都會帶上cookie,如果cookie儲存內容過多,會嚴重占用伺服器端頻寬,影響效能。

所以如果你是簡單或且安全不敏感的應用,可以只使用cookie。否則還是需要cookie配合session。

不過現有語言和框架基本都可以讓你簡單地使用session,而無需考慮session和cookie的關係。

網路應用中session和token本質是一樣的嗎,有什麼區別?

rail gun session表示會話。比如你作為乙個使用者登入,你可能訪問量很多個網頁,但是這個時候你在同乙個會話裡面。會話表示乙個終端與伺服器通訊的過程。token表示令牌,令牌用於用於某些操作或者表明相應身份。在網路中比如會話令牌 session toke 作為會話的唯一識別符號。定義上是兩...

flask 中怎樣使用session和cookie使使用者保持登入一段時間?

芒果 Response set cookie key 鍵 value 值 max age None 秒為單位的cookie壽命,None表示http only expires None 失效時間,datetime物件或unix時間戳 path cookie的有效路徑 domain None cook...

vuex持久化儲存 和 直接存sessionstorage或者localStorage有什麼區別?

hbynlsl vuex狀態資料,在不同元件之間是共享的,且是響應式更新的 即在A元件中更新狀態資料,在B元件中會自動響應式更新 但是在瀏覽器頁面重新整理後,vuex中的資料會丟失。sessionStorage 或 localStorage資料,不會自動實現響應式更新 但是資料是持久化的,瀏覽器頁面...