session和cookies的作用和區別

2021-08-02 06:08:57 字數 1312 閱讀 2321

二者的定義:

當你在瀏覽**的時候,web 伺服器會先送一小小資料放在你的計算機上,cookie 會幫你在**上所打的文字或是一些選擇,都紀錄下來。當下次你再光臨同乙個**,web 伺服器會先看看有沒有它上次留下的 cookie 資料,有的話,就會依據 cookie裡的內容來判斷使用者,送出特定的網頁內容給你。 cookie 的使用很普遍,許多有提供個人化服務的**,都是利用 cookie來辨認使用者,以方便送出使用者量身定做的內容,像是 web 介面的免費 email **,都要用到 cookie。

具體來說cookie機制採用的是在客戶端保持狀態的方案,而session機制採用的是在伺服器端保持狀態的方案。

cookie 和session 的區別:

1、cookie資料存放在客戶的瀏覽器上,session資料放在伺服器上。

2、cookie不是很安全,別人可以分析存放在本地的cookie並進行cookie欺騙, 考慮到安全應當使用session。

3、session會在一定時間內儲存在伺服器上。當訪問增多,會比較占用你伺服器的效能,考慮到減輕伺服器效能方面,應當使用cookie。

4、單個cookie儲存的資料不能超過4k,很多瀏覽器都限制乙個站點最多儲存20個cookie。

5、所以個人建議:

將登陸資訊等重要資訊存放為session。

其他資訊如果需要保留,可以放在cookie中。

session的生命週期

session儲存在伺服器端,一般為了防止在伺服器的記憶體中(為了高速訪問),sessinon在使用者訪問第一次訪問伺服器時建立,需要注意只有訪問jsp、servlet等程式時才會建立session,只訪問html、image等靜態資源並不會建立session,可呼叫request.getsession(true)強制生成session。

session什麼時候失效?

1. 伺服器會把長時間沒有活動的session從伺服器記憶體中清除,此時session便失效。tomcat中session的預設失效時間為20分鐘。

cookie的生命週期

如果沒有設定maxage, 預設是當前會話結束時. 

如果設定了maxage, 則直到設定時間. 

什麼叫會話結束?

就是瀏覽器關閉時, 關閉瀏覽器上的tab頁不算會話結束. 

cookie 什麼時候產生

訪問html不產生cookie 

訪問jsp , servlet產生cookie。

Cookies 和 Session的區別

1.cookie 是一種傳送到 客戶瀏覽器的文字串控制代碼,並儲存在客戶機硬碟上,可以用來在某個web站點會話間持久的保持資料。2.session 其實指的就是訪問者從到達某個特定主頁到離開為止的那段時間。session其實是利用cookie進行資訊處理的,當使用者首先進行了請求後,服務端就在使用者...

Cookies 和 Session的區別

1.cookie 是一種傳送到客戶瀏覽器的文字串控制代碼,並儲存在客戶機硬碟上,可以用來在某個web站點會話間持久的保持資料。2.session其實指的就是訪問者從到達某個特定主頁到離開為止的那段時間。session其實是利用cookie進行資訊處理的,當使用者首先進行了請求後,服務端就在使用者瀏覽...

Cookies 和 Session的區別

1.cookie 是一種傳送到客戶瀏覽器的文字串控制代碼,並儲存在客戶機硬碟上,可以用來在某個web站點會話間持久的保持資料。2.session其實指的就是訪問者從到達某個特定主頁到離開為止的那段時間。session其實是利用cookie進行資訊處理的,當使用者首先進行了請求後,服務端就在使用者瀏覽...