本文共 764 字,大约阅读时间需要 2 分钟。
前提条件:通常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 否
转载于:https://blog.51cto.com/jiaxiaoxu/2371541