现做一个网站,论动使用动网的BBS:
<a href="http://www.xxx.cn/bbs/dispbbs.asp?boardid=6&ID=47">进入</a>
能在点击“进入”,先转向http://www.xxx.cn/bbs/login.asp?username=aa&pwd=bbb 等论坛登录成功后,再转向http://www.xxx.cn/bbs/dispbbs.asp?boardid=6&ID=47这个页面。实现如http://www.xglove.com/index.htm 论坛热贴里面的功能?

解决方案 »

  1.   

    public static void redirect(SinoFin.Web.Common.PageBase _page)

    string[] AllKeys = _page.Request.QueryString.AllKeys;
    string ReturnUrl = "";
    ReturnUrl = _page.Request.Params["URL"] + "?";
    for(int i=0; i<AllKeys.Length; i++)
    {
    ReturnUrl += AllKeys[i] + "=" + _page.Request.Params[AllKeys[i]] + "&";
    }

    if(ReturnUrl != "")
    ReturnUrl = ReturnUrl.Substring(0, ReturnUrl.Length-1); _page.Response.Redirect("http://"+_page.Request.Url.Host+":" +_page.Request.Url.Port.ToString() + _page.Request.ApplicationPath +"/Secure/Login.aspx?ReturnUrl=" + ReturnUrl);
    }
      

  2.   

    主要意思就是,如果判断没有登陆,就用上面的函数转向到login页面(和你情况改一下),这个页面获取ReturnUrl
    if (有"ReturnUrl"参数){
    Response.Redirect("http://"+Request.Url.Host+":" +Request.Url.Port.ToString() +"/"+ReturnUrl); }
    else
    {
    Response.Redirect("默认页");
    }
      

  3.   

    这个主要涉及到一个用户认证和Session保存的问题,用户通过认证得到Session,有权限对页面进行访问!如果Session丢失那么就无权访问!所以在每页里面都有一个认证过程,这样就没有人能够不经认证直接访问页面了!
      

  4.   

    不知是你没明白我的意思,还是我没看懂你的代码:
    1、我的系统与第三方BBS并不在一个虚拟目录下
    2、实现的功能是在我的系统上登录后,马上能登录第三方BBS,当然两个数据的用户名和密码是同步的,
    3、第三方BBS的登录方法就是转向:http://www.xxx.cn/bbs/login.asp?username=aa&pwd=bbb这个页面就算成功了
    4、需要实现的功能就是,在asp.net的代码,先转向 论坛的登录页面,然后再立即转下论动里面的一个内页。
      

  5.   

    Jinniu(金牛) 说得对,第一步转向http://www.xxx.cn/bbs/login.asp?username=aa&pwd=bbb这个页面就是一个产生Session的问题,这个可以实现,但要求在产生Seesion后,又自动转向另一个页面在.net就不知道怎么实现了.
      

  6.   

    public static void redirect(SinoFin.Web.Common.PageBase _page)

    string[] AllKeys = _page.Request.QueryString.AllKeys;
    string ReturnUrl = "";
    ReturnUrl = _page.Request.Params["URL"] + "?";
    for(int i=0; i<AllKeys.Length; i++)
    {
    ReturnUrl += AllKeys[i] + "=" + _page.Request.Params[AllKeys[i]] + "&";
    }

    if(ReturnUrl != "")
    ReturnUrl = ReturnUrl.Substring(0, ReturnUrl.Length-1); _page.Response.Redirect("http://"+_page.Request.Url.Host+":" +_page.Request.Url.Port.ToString() + _page.Request.ApplicationPath +"/Secure/Login.aspx?ReturnUrl=" + ReturnUrl);
    }