1. 程式人生 > >客戶端是如何判斷是否帶jsessionid去服務端呢

客戶端是如何判斷是否帶jsessionid去服務端呢

hello session存儲 地址 等等 服務器 用戶 業務 ssi Nid

前提條件:通常session的生成是根據服務器端訪問session才會生成session對象。(request.getsession());

1、服務器端如何確定一個客戶端的?

    客戶端第一次訪問服務器,服務器會生成一個session存儲在服務器內存中,並返回sessionid給客戶端(jsessionid)。客戶端第二次訪問服務器時會帶上這個jessionid去訪問服務器,服務器端拿到jsessionid然後去內存中匹配,如果匹配上說明有這個用戶的session,說明來過,查看session中的業務信息,判斷是否登錄等等業務操作。

2、客戶端是如何判斷是否帶jsessionid去服務端呢?

    根據域名和path路徑兩個條件。當訪問的域名小於cookie中的域名時,並且cookie中的path路徑大於訪問的路徑時,說的話理解上可能有歧義:上例子:

    假如cookie中存儲的域名信息我:my.com   path路徑為/hello

        地址                                                   是否帶jsessionid過去
  http://my.com/hello                              是
        http://cn.my.com/hello/hi                     是
        http://cn.you.com/hello                        否
        http://my.com/hi                                   否

客戶端是如何判斷是否帶jsessionid去服務端呢