浅谈session实现原理(阿里面试题)
直接上原題
問(wèn): 當(dāng)用戶登錄某網(wǎng)站后,向服務(wù)器發(fā)送一個(gè)請(qǐng)求,服務(wù)器如何判斷是這個(gè)用戶請(qǐng)求的
首先,你要明白一點(diǎn),最初http協(xié)議在設(shè)計(jì)的時(shí)候,主要面向當(dāng)時(shí)的web1.0網(wǎng)站,他們不需要知道是誰(shuí)來(lái)訪問(wèn),只需要向外界提供相應(yīng)的web服務(wù)即可. 但是,在web2.0的網(wǎng)站中,用戶和網(wǎng)站發(fā)生相關(guān)的信息交互.所以,web服務(wù)提供者需要知道,是誰(shuí)發(fā)起了請(qǐng)求.也就是,服務(wù)端有能力從http數(shù)據(jù)包中提取用戶的相關(guān)信息.
現(xiàn)在一般采用使用服務(wù)器端產(chǎn)生的Session結(jié)合瀏覽器的Cookie.實(shí)現(xiàn)用戶與客戶端之間唯一秘鑰,上面的PHPSESSID的值就是相關(guān)的session ID與cookic結(jié)合的相關(guān)信息.
一般來(lái)說(shuō)包括以下4個(gè)步驟:
1.服務(wù)器端的產(chǎn)生Session ID 2.服務(wù)器端和客戶端存儲(chǔ)Session ID 3.從HTTP Header中提取Session ID(發(fā)送的是一個(gè)COOKIC值) 4.根據(jù)Session ID從服務(wù)器端的Hash中獲取請(qǐng)求者身份信息好吧,怪自己平時(shí)項(xiàng)目做太多了,沒(méi)去想細(xì)節(jié)的東西,太相信別人的博客了��
總結(jié)
以上是生活随笔為你收集整理的浅谈session实现原理(阿里面试题)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CentOS下yum安装MySQL8.0
- 下一篇: python有链表和指针吗_了解如何更改