Request.UrlReferrer为空?

在aspx C#.NET页面(我正在运行Framework

v3.5)中,我需要知道用户来自何处,因为他们如果不登录就无法查看页面。如果我有页面A(用户想要查看的页面)重定向到页B(登录页),Request.UrlReferrer对象为null。

背景:如果用户未登录,我将重定向到“登录”页面(B在这种情况下)。登录后,我想将他们返回到他们被迫登录之前所请求的页面。

一个不错的快速解决方案似乎是:

//if user not logged in Response.Redirect("..MyLoginPage.aspx?returnUrl=" +

Request.ServerVariables["SCRIPT_NAME"]);

然后,只需在登录页面上查看QueryString,然后将其强制进入即可,然后将用户放置在成功登录后的位置。

回答:

如果使用标准成员资格提供程序,并设置目录/页面的授权,则代码将自动设置ReturnUrl的查询参数,并在成功登录后重定向。

如果您不想使用成员资格提供程序模式,建议您也手动执行查询字符串参数操作。HTTP引荐来源网址不是很可靠。

以上是 Request.UrlReferrer为空? 的全部内容, 来源链接: utcz.com/qa/397469.html

回到顶部