session 如何保存會話

常常聽到 session 能夠保存會話,可是如何保存會話的呢?

以 node 中 express-session 舉例.node

客服端第一次訪問服務器端時,服務器端會查詢 cookie 中是否有 connect.sid 字段。express

若是該字段沒有,那麼會利用 uid-safe 生成一個不重複的 id,以此爲 key 生成 session 內容 ,並對該 id 進行加密, 將該 id 賦值給 cookie 中的 connect.sid 字段,利用 set-cookie 返回給客戶端,cookie會存在客服端硬盤中,同時讀取到內存中。服務器

如過該字段有,則將 connect.sid 解密出 session id,就能夠以此爲 key 去取出相應的 session 內容。cookie

當咱們訪問某一服務器時,cookie 會從硬盤讀取到內存中。session

以上爲我的理解,若有偏頗,請諸位矯正。ui

相關文章
相關標籤/搜索