今天做了个小测试...我在ASP.NET页面后太累的page_Load 方法里加上一句话 :Response.Write(Session.SessionID);然后用IE访问这个页面,HTTP请求报文那里没有带上Cookie,并且你刷新页面时候,页面上write出来的sessionID随着你的刷新会改变。。
但是我又做了另外一个小测试,在page_Load方法里面加上Response.Write(Session.SessionID);Session["UserName"]="Hello";退出IE后重新打开IE,结果HTTP请求报文那里会带上cookie 还有即使你刷新页面那个sessionID是不会变化的。。这里我有几大疑问,恳请大神们帮我解答下,上网找了下没答案:
1、只要服务器配置了使用session,那么是不是对于每一个客户浏览器第一次访问服务器网站的时候,服务器都为其分配一个固定的sessionID,并储存在进程那里呢??但是如果这样,为什么我刷新后,sessionID会改变呢?
2、是不是服务器对次浏览器的session属性做了修改的时候,才为浏览器创建一个固定的sessionID 储存在IIS进程中,然后返回给浏览器呢?即服务器对session作了修改,才为这个浏览器客户创建一个固定的session 。session
但是我又做了另外一个小测试,在page_Load方法里面加上Response.Write(Session.SessionID);Session["UserName"]="Hello";退出IE后重新打开IE,结果HTTP请求报文那里会带上cookie 还有即使你刷新页面那个sessionID是不会变化的。。这里我有几大疑问,恳请大神们帮我解答下,上网找了下没答案:
1、只要服务器配置了使用session,那么是不是对于每一个客户浏览器第一次访问服务器网站的时候,服务器都为其分配一个固定的sessionID,并储存在进程那里呢??但是如果这样,为什么我刷新后,sessionID会改变呢?
2、是不是服务器对次浏览器的session属性做了修改的时候,才为浏览器创建一个固定的sessionID 储存在IIS进程中,然后返回给浏览器呢?即服务器对session作了修改,才为这个浏览器客户创建一个固定的session 。session
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货