加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

从ASP.Net中的sessionID获取会话对象

发布时间:2020-12-15 19:58:35 所属栏目:asp.Net 来源:网络整理
导读:无论如何从sessionID获取会话对象? 我有一个使用Flash上??传的小项目让用户将他们的文件上传到服务器,但问题是Flash在发送会话和cookie时有一些错误(在Firefox或Chrome中,但不是IE),所以我发现了解决方案来解决这个问题:通过Flash将sessionID发送到服务器,
无论如何从sessionID获取会话对象?

我有一个使用Flash上??传的小项目让用户将他们的文件上传到服务器,但问题是Flash在发送会话和cookie时有一些错误(在Firefox或Chrome中,但不是IE),所以我发现了解决方案来解决这个问题:通过Flash将sessionID发送到服务器,并在服务器上将sessionID解码回会话对象,但我不知道怎么做.我正在使用ASP.NET和C#.

任何人都可以告诉我该怎么做?

解决方法

Moo-Juice提出的链接不再有效.

我使用了本页提供的代码:

http://snipplr.com/view/15180/

它就像一个魅力.

如果链接断开,这里是代码:

void Application_BeginRequest(object sender,EventArgs e)
{
    try
    {
        string session_param_name = "ASPSESSID";
        string session_cookie_name = "ASP.NET_SESSIONID";
        string session_value = Request.Form[session_param_name] ?? Request.QueryString[session_param_name];
        if (session_value != null) { UpdateCookie(session_cookie_name,session_value); }
    }
    catch (Exception) { }

    try
    {
        string auth_param_name = "AUTHID";
        string auth_cookie_name = FormsAuthentication.FormsCookieName;
        string auth_value = Request.Form[auth_param_name] ?? Request.QueryString[auth_param_name];

        if (auth_value != null) { UpdateCookie(auth_cookie_name,auth_value); }
    }
    catch (Exception) { }
}
void UpdateCookie(string cookie_name,string cookie_value)
{
    HttpCookie cookie = HttpContext.Current.Request.Cookies.Get(cookie_name);
    if (cookie == null)
    {
        HttpCookie cookie1 = new HttpCookie(cookie_name,cookie_value);
        Response.Cookies.Add(cookie1);
    }
    else
    {
        cookie.Value = cookie_value;
        HttpContext.Current.Request.Cookies.Set(cookie);
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读