如何实现登陆后返回的功能
比如用户在访问a.aspx,a.aspx要求用户登陆,如果用户没有登陆则跳转到登陆页面(login.aspx),用户在登陆后如何返回a.aspx?或者说在login.aspx中,如何得到上一个出错页面的地址?
------解决方案--------------------a.aspx-> login.aspx?url=a.aspx-> 登陆成功-> Response.Write(Request[ "url "]);
------解决方案--------------------ding
JF
------解决方案--------------------FormsAuthentication.RedirectFromLoginPage
------解决方案--------------------membership 可以很好的解决你的问题
?
a.aspx-> login.aspx?url=a.aspx-> 登陆成功-> Response.Write(Request[ "url "]);也可以
------解决方案--------------------membership 可以很好的解决你的问题
?
a.aspx-> login.aspx?url=a.aspx-> 登陆成功-> Response.Write(Request[ "url "]);也可以
---------------------------------------------
我这里怎么不行呢?
------解决方案--------------------Write不是写吗?为什么不用redrect?
------解决方案--------------------应该是使用form验证
lz说的很对,这个是将字符串写入到回应的数据流里面去,如果要转向,可以用redirect
------解决方案--------------------protected void Page_Load(object sender, EventArgs e)
{
ViewState[ "UrlReferrer "] = Request.UrlReferrer.ToString();
HyperLink1.NavigateUrl = (string)ViewState[ "UrlReferrer "];
Response.Write((string)ViewState[ "UrlReferrer "]);
}
------解决方案--------------------顶楼上的。
------解决方案--------------------protected void Page_Load(object sender, EventArgs e)
{
ViewState[ "UrlReferrer "] = Request.UrlReferrer.ToString();
HyperLink1.NavigateUrl = (string)ViewState[ "UrlReferrer "];
Response.Write((string)ViewState[ "UrlReferrer "]);
}
---------------------------
我觉得这个很好啊。
------解决方案--------------------1Form 验证
2自已写代码处理
------解决方案--------------------记录上一次访问的页面地址,
如:login.aspx?url=a.aspx
------解决方案--------------------我是在数据库设计了一个字段来记录登陆用户的权限
然后在登陆的时候创建个Session,,在其他页面的pageload中来判断用户是否登陆和登陆权限
Session为空则未登陆,有值的话就判断权限
------解决方案--------------------肯定别的页面放Session,判断他的有无,再跳转页面
------解决方案--------------------protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
try
{
//判断用户是否登录
}
catch(CheckSessionException ex)
{
log.Warn( "Checksession Failed: " + ex.Message);
string logonPageUrl = Request.ApplicationPath + Globe.LOGIN_PAGE;
if(string.Compare(Request.Path,logonPageUrl,true)!=0 && Request.Path.IndexOf( "Public/ ")==-1)
{
string url = Request.Url.ToString().Replace( '& ', '* ');
Response.Redirect(logonPageUrl + "?BackUrl= " + url);
}