我在ASP.NET的页面登陆后.想点击进入论坛的链接,就以登陆的方式直接进入论坛了,而不需要重新登陆一次
有哪位达人搞过类似的一站式登陆,请赐教,不甚感激!

解决方案 »

  1.   

    用session存用户信息啊
    我以前是这样做的
      

  2.   

    用session不好,容易过时,用Cache,以前在孟老大那里见过类似的问题。
    private void Login_Click(object sender, System.EventArgs e)
    {
      // 作为唯一标识的Key,应该是唯一的,这可根据需要自己设定规则。
      // 做为测试,这里用用户名和密码的组合来做标识;也不进行其它的错误检查。   // 生成Key
      string sKey = UserName.Text + "_" + PassWord.Text;
      // 得到Cache中的给定Key的值
      string sUser = Convert.ToString(Cache[sKey]);
      // 检查是否存在
      if (sUser == null || sUser == String.Empty)
      {
        // Cache中没有该Key的项目,表名用户没有登录,或者已经登录超时
        // 注意下面使用的TimeSpan构造函数重载版本的方法,是进行是否登录判断的关键。
        TimeSpan SessTimeOut = new TimeSpan(0,0,System.Web.HttpContext.Current.Session.Timeout,0,0);
        HttpContext.Current.Cache.Insert(sKey,sKey,null,DateTime.MaxValue,SessTimeOut,
          System.Web.Caching.CacheItemPriority.NotRemovable,null);
        Session["User"] = sKey;
        // 首次登录,您可以做您想做的工作了。
        Msg.Text="<h4 style='color:red'>嗨!欢迎您访问'";
        Msg.Text += "</a>,祝您浏览愉快!:)</h4>";
      }
      else
      {
        // 在 Cache 中发现该用户的记录,表名已经登录过,禁止再次登录
        Msg.Text="<h4 style='color:red'>抱歉,您好像已经登录了呀:-(</h4>";
       return;
      }
    }
      

  3.   

    利用System.Net明明空间下的HttpWebRequest 和HttpWebResponse类就可以做到自动登陆,我刚做的一个项目,需要和另外一个系统(bs结构)交换数据,而另外一方不提供接口,只好自动登录他们的系统,从网页上抓取数据、然后打包上传数据。如果你只是自动登录,应该很简单,很好实现,可以参考“CSDN小助手”(开源的)。
      

  4.   

    to: amu0528(小木屋) and humin1906(HJM) asp中怎么读,net的Session或者Cache?即使能读,也得改动网的代码吧?
      

  5.   

    一个是.NET,一个是asp
    SESSION是不能共享的
    只有存取COOKIE
    但根本不知道应该改哪几个COOKIES的值