sessionId的生成机制是什么?
4个回答
展开全部
跟IP和端口这些无关吧,应该跟客户端,浏览器这些有关。当浏览器第一次请求时,服务器创建一个session对象,同时生成一个sessionId,并在此次响应中将sessionId 以响应报文的方式些回客户端浏览器内存或以重写url方式送回客户端,来保持整个会话。关闭此浏览器窗口,其内存中的sessionId也就随之销毁。重新请求时,会重新生成一个sessionId给客户端浏览器,并存在浏览内存中。
SessionID 值是使用保证唯一性和随机性的算法生成的,其中保证唯一性的目的是确保会话不冲突,保证随机性的目的是确保怀有恶意的用户不能使用新的 SessionID 来计算现有会话的 SessionID。
SessionID 值是使用保证唯一性和随机性的算法生成的,其中保证唯一性的目的是确保会话不冲突,保证随机性的目的是确保怀有恶意的用户不能使用新的 SessionID 来计算现有会话的 SessionID。
追问
“应该跟客户端,浏览器这些有关”,能说得更确切点么?其实大致的原理我都明白,主要是需要一个确定的答案,有依据的说法,在哪里能找到这样的精确的说明、描述或者规范,或者说是服务器制造商自己实现的算法?
追答
SessionID是服务端生成的,但肯定不是制造商,算法跟服务器系统有关吧,好像没看到这方面的资料。
展开全部
【转】SessionID于IP地址无关的,是和会话有关的,你可以用你的电脑开启不同的浏览器访问你的页面,每种浏览器会产生一个会话,即一个SessionID,同时SessionID受到服务器Timeout的超时控制,一旦会话停止了超时时间,会话就结束了,如果你重新刷新网页会产生新的会话,也就会重新生成一个SessionID。
追问
谢谢你的回答,不过,这些答案并不是我需要的。我想,如果你能说出是怎么和会话有关的,我会比较感兴趣。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是映射关系,映射到你上次的会话,相当于识别是你身份(上一次浏览),而sessionid是随机生成的,随机数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得是时间 相关,然后大概是计算MD5之类的,这些都能保证不重复
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询