当前位置:编程学习 > C#/ASP.NET >>

asp.net session机制,sessionid对应coookie问题

环境:.net 2.0
情况: 
defualt.aspx页面登陆,登录成功session存储登录客户编号。然后转向另一个页面。this.Response.Redirect("index.aspx"),这个页面判断session存储的客户编号是否存在。

大部分客户登录使用正常,有个别客户出现问题。登录成功后,index.aspx页面取不到session值。


测试:我把项目放在服务器上,建设网站调试。发现,index.aspx页面session存储到客户端asp.net_sessionid(cooike).变成了两个“asp.net_sessionid”和“,asp.net_sessionid”.即多了一个带逗号的cooikename.
“,asp.net_sessionid”中存储的sessionid和defualt.aspx页面登录成功写入session之后Redirect之前的sessionid一样。
“asp.net_sessionid”中存储的sessionid是个新值。

思考:session默然对应cookiename是“asp.net_sessionid”,所以导致取不到session。登录失败。
但不清楚什么原因导致正确的sessioni被存储到“,asp.net_sessionid”里面去了。


我换了session默然对应cookiename(web.config修改配置),变成“klgSessionId”.但是index.aspx页面还是多了个“,klgSessionId”。和上面情况一样。

调试截图
[img=http://group.store.qq.com/http_imgload.cgi?/rurl4_b=e642a9a5cf57b6d9cd0b77a841e23813ba5ff8396f4a70ff66ca5d7bbff3ae355b69a1de2768d0997cc2a209eb661c189892788e8e4692d2bad3911fa150cf595988ba5b4f0bad1c30905cab750d8c76a59fb678495878ceca9313b047c4486738dda38130b1ee2d51339b902a5ab006d973c472][/img]


“,klgSessionId”对应cookie的httponly为false.
“klgSessionId”对应cookie的httponly为true

是不是客户网络问题还是病毒原因导致。
客户病毒扫描也没发现问题。网络问题可能吗?(铁通网动态ip,ie是7.0版本)


谁知道原因,? --------------------编程问答-------------------- 咋没人回答吗? --------------------编程问答-------------------- Session数据保存在服务器端, 但是每一个客户端都需要保存一个SessionID, SessionID保存在Cookies中, 关闭浏览器时过期.
在向服务器发送的HTTP请求中会包含SessionID, 服务器端根据SessionID获取获取此用户的Session信息.
不同的会话SessoinID是不会重复的
--------------------编程问答-------------------- 这个原理我晓得, --------------------编程问答-------------------- 兰州没信誉啊 --------------------编程问答-------------------- 关键问题,不知道是这种如何出现。只是个别客户在访问网站才有这个问题。 --------------------编程问答-------------------- “chenny333”说啥呢 --------------------编程问答-------------------- 同志们,帮忙了
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,