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

asp.net – 登录后重定向到上一页

发布时间:2020-12-16 07:36:44 所属栏目:asp.Net 来源:网络整理
导读:我使用Asp.Net Web Forms创建了一个Admin网站. 当我与我的朋友分享我的网站页面(不是主页)的网址时,当他在浏览器中输入时,它会自动将他重定向到登录页面.(这是正确的行为). 当他输入用户名和密码时,它会重定向到主页,而不是我与他分享的网址. 我尝试在login.
我使用Asp.Net Web Forms创建了一个Admin网站.
当我与我的朋友分享我的网站页面(不是主页)的网址时,当他在浏览器中输入时,它会自动将他重定向到登录页面.(这是正确的行为).
当他输入用户名和密码时,它会重定向到主页,而不是我与他分享的网址.

我尝试在login.aspx上使用Request.UrlReferrer.PathAndQuery.
仅当用户有意退出系统时,它才有效.

基本上,我想通过邮件或其他东西分享链接(url),用户将打开它,如果他还没有登录,他会要求登录,一旦登录浏览器将显示他从网址的页面,而不是主页.

解决方法

如果您使用的是 Forms Authentication,则可以在登录页面中使用ReturnUrl查询字符串:

var returnUrl = Request.QueryString["ReturnURL"];
if (string.IsNullOrEmpty(returnUrl)){
   returnUrl = "~/";
}
Response.Redirect(returnUrl);

如果你不使用它,你应该表现得像:
将用户重定向到登录页面时,使用referrer页面添加查询字符串.

//**Remember to url encode it!**
var returnUrl = Server.UrlEncode(Request.Url.PathAndQuery);
Response.Redirect("~/login.aspx?ReturnURL=" + returnUrl);

(编辑:李大同)

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

    推荐文章
      热点阅读