cookie和session介紹

一、cookie:

在網(wǎng)站中,http請(qǐng)求是無狀態(tài)的。也就是說即使第一次和服務(wù)器連接后并且登錄成功后,第二次請(qǐng)求服務(wù)器依然不能知道當(dāng)前請(qǐng)求是哪個(gè)用戶。cookie的出現(xiàn)就是為了解決這個(gè)問題,第一次登錄后服務(wù)器返回一些數(shù)據(jù)(cookie)給瀏覽器,然后瀏覽器保存在本地,當(dāng)該用戶發(fā)送第二次請(qǐng)求的時(shí)候,就會(huì)自動(dòng)的把上次請(qǐng)求存儲(chǔ)的cookie數(shù)據(jù)自動(dòng)的攜帶給服務(wù)器,服務(wù)器通過瀏覽器攜帶的數(shù)據(jù)就能判斷當(dāng)前用戶是哪個(gè)了。cookie存儲(chǔ)的數(shù)據(jù)量有限,不同的瀏覽器有不同的存儲(chǔ)大小,但一般不超過4KB。因此使用cookie只能存儲(chǔ)一些小量的數(shù)據(jù)。

二、session:

session和cookie的作用有點(diǎn)類似,都是為了存儲(chǔ)用戶相關(guān)的信息。不同的是,cookie是存儲(chǔ)在本地瀏覽器,而session存儲(chǔ)在服務(wù)器。存儲(chǔ)在服務(wù)器的數(shù)據(jù)會(huì)更加的安全,不容易被竊取。但存儲(chǔ)在服務(wù)器也有一定的弊端,就是會(huì)占用服務(wù)器的資源,但現(xiàn)在服務(wù)器已經(jīng)發(fā)展至今,一些session信息還是綽綽有余的。

三、cookie和session結(jié)合使用:

web開發(fā)發(fā)展至今,cookie和session的使用已經(jīng)出現(xiàn)了一些非常成熟的方案。在如今的市場或者企業(yè)里,一般有兩種存儲(chǔ)方式:

1、存儲(chǔ)在服務(wù)端:通過cookie存儲(chǔ)一個(gè)session_id,然后具體的數(shù)據(jù)則是保存在session中。如果用戶已經(jīng)登錄,則服務(wù)器會(huì)在cookie中保存一個(gè)session_id,下次再次請(qǐng)求的時(shí)候,會(huì)把該session_id攜帶上來,服務(wù)器根據(jù)session_id在session庫中獲取用戶的session數(shù)據(jù)。就能知道該用戶到底是誰,以及之前保存的一些狀態(tài)信息。這種專業(yè)術(shù)語叫做server side session。

2、將session數(shù)據(jù)加密,然后存儲(chǔ)在cookie中。這種專業(yè)術(shù)語叫做client side session。flask采用的就是這種方式,但是也可以替換成其他形式。

四、cookie 和session 的區(qū)別:

1、cookie數(shù)據(jù)存放在客戶的瀏覽器上,session數(shù)據(jù)放在服務(wù)器上。
2、cookie不是很安全,別人可以分析存放在本地的COOKIE并進(jìn)行COOKIE欺騙,考慮到安全應(yīng)當(dāng)使用session。
3、session會(huì)在一定時(shí)間內(nèi)保存在服務(wù)器上。當(dāng)訪問增多,會(huì)比較占用你服務(wù)器的性能考慮到減輕服務(wù)器性能方面,應(yīng)當(dāng)使用COOKIE。
4、單個(gè)cookie保存的數(shù)據(jù)不能超過4K,很多瀏覽器都限制一個(gè)站點(diǎn)最多保存20個(gè)cookie。
5、所以個(gè)人建議:
將登陸信息等重要信息存放為SESSION
其他信息如果需要保留,可以放在COOKIE中

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 目錄Cookie機(jī)制什么是CookieCookie的不可跨域名性Unicode編碼:保存中文BASE64編碼:保存...
    Tomatoro閱讀 17,042評(píng)論 7 186
  • 會(huì)話(Session)跟蹤是Web程序中常用的技術(shù),用來跟蹤用戶的整個(gè)會(huì)話。常用的會(huì)話跟蹤技術(shù)是Cookie與Se...
    chinariver閱讀 5,783評(píng)論 1 49
  • 1. cookie 1.1 什么是cookie cookie 是存儲(chǔ)于訪問者的計(jì)算機(jī)中的變量。每當(dāng)同一臺(tái)計(jì)算機(jī)通過...
    cbw100閱讀 4,191評(píng)論 0 13
  • 文 | 晨妤兒 想你 盼你 風(fēng)影不離你
    晨妤兒閱讀 173評(píng)論 1 1
  • 我,一只不祥的鳥 天生厄運(yùn)。 幾十年的留守,孤獨(dú) 也許更久。 凍結(jié)的時(shí)間早已磨平爪牙, 我無力抗拒。 而我眼中的世...
    彌九的詩閱讀 1,055評(píng)論 7 11

友情鏈接更多精彩內(nèi)容