簡述session工作原理 什么是session,有哪些實現(xiàn)session的機制?
什么是session,有哪些實現(xiàn)session的機制?session直譯為會話,代表了用戶與服務(wù)端的一系列交互,對應(yīng)于tomcat的實現(xiàn)就是一個對象,目的是為了識別用戶。session出現(xiàn)的背景是因為
什么是session,有哪些實現(xiàn)session的機制?
session直譯為會話,代表了用戶與服務(wù)端的一系列交互,對應(yīng)于tomcat的實現(xiàn)就是一個對象,目的是為了識別用戶。
session出現(xiàn)的背景是因為http本身是無狀態(tài)的,也就是說每次請求都是相互獨立的,那服務(wù)端怎么知道兩次交互對應(yīng)的是一個訪問者呢?session就是為了解決這個問題出現(xiàn)的,session的生成在服務(wù)端,但必須配合瀏覽器cookie來使用,服務(wù)端識別用戶的過程如下:
1.用戶通過瀏覽器訪問服務(wù)器
2.服務(wù)端創(chuàng)建session對象,并通過set-cookie將session的ID返回給瀏覽器,并告知瀏覽器存入cookie
3.瀏覽器拿到session的ID后存入cookie
4.瀏覽器后續(xù)向服務(wù)端請求時會帶上cookie中的sessionID
5.服務(wù)端根據(jù)sessionID找到之前創(chuàng)建的session對象來識別訪問用戶(用戶信息往往會存入該session對象)
6.用戶關(guān)閉瀏覽器時瀏覽器清除cookie中的sessionID
有問題歡迎交流。