none
求助,关于Session和SessionID的问题? RRS feed

  • 问题

  • 当用户创建一个Session时,系统会分配一个SessionID号。
    现在我知道SessionID号,怎么反向通过SessionID号获得Session呢?
    或者通过SessionID号改变当前的Session为该SessionID号的。

    如果有此方法请告知方法,最好能给出一小段代码。谢谢!
    2009年4月21日 4:08

答案

  • SessionID是系统原来标识的,你自己无法使用
    你可以设置Session["xx"] = "用户名"
    得到当前用户的信息

    孟宪会
    2009年4月21日 8:11
    版主
  • 当然,你如果知道SessionID,则可以通过
    if(Session.SessionID == "你的id值")
    判断。如果相等,则当前的Session就是你的Session。

    不过,一个客户端访问时只能同时有一个SessionID,知道SessionID好像没有任何意义。建议你再仔细思考你的业务,并再翻书看看Session的概念
    孟宪会
    2009年4月21日 8:16
    版主
  • .net没有提供通过sessionid来获得session     这是为了安全性


    单点登陆可以用公用数据库储存临时key 来解决    转到别的网站直接提供临时key 应该就可以了  不知道问题出在哪里?
    工作突然有点忙 嘿嘿
    2009年4月22日 3:36

全部回复

  • SessionID是系统原来标识的,你自己无法使用
    你可以设置Session["xx"] = "用户名"
    得到当前用户的信息

    孟宪会
    2009年4月21日 8:11
    版主
  • 当然,你如果知道SessionID,则可以通过
    if(Session.SessionID == "你的id值")
    判断。如果相等,则当前的Session就是你的Session。

    不过,一个客户端访问时只能同时有一个SessionID,知道SessionID好像没有任何意义。建议你再仔细思考你的业务,并再翻书看看Session的概念
    孟宪会
    2009年4月21日 8:16
    版主
  • 谢谢你的解答。
          最近在做单点登录~,主要在异常退出时的判断卡住了下,后来想到session是跟一个客户端访问有关的,就打算通过session是否存在来判断。
     
         如果通过session是否存在来判断的话我就要知道我要判断的session,即然session在创建时系统会标识一个id,我就打算通过这个sessionid来找到我要的session并检测他的存在。

    看来你的解答,看来这个办法是行不通了。net没有提供通过sessionid来获得session。

    2009年4月21日 8:39
  • 浏览器关闭了Session就丢失了,
    建议在 Session过期之后重新登录

    孟宪会
    2009年4月21日 8:57
    版主
  • .net没有提供通过sessionid来获得session     这是为了安全性


    单点登陆可以用公用数据库储存临时key 来解决    转到别的网站直接提供临时key 应该就可以了  不知道问题出在哪里?
    工作突然有点忙 嘿嘿
    2009年4月22日 3:36