我必须在asp.net中创建登录页面。
但是当我在浏览器中复制并粘贴直接URL时,这种情况不会发生。 我怎样才能做到这一点?
示例:如果我有project.aspx和login.aspx,并且没有Login.aspx就不应该访问Project.aspx,即使在浏览器中粘贴了URL。
答案 0 :(得分:0)
成功登录后,您可以设置会话变量。在每个页面加载中,您可以检查会话是否为空,如果为null,您可以重定向到登录页面。所以如果用户直接输入URL,会话将为null它将重定向到登录页面
答案 1 :(得分:0)
如果您使用标准的asp.net身份验证(例如Forms),您可以在web.config中指定需要授权的路径或页面,如果您使用标准登录组件,则需要重定向URL登录并返回到粘贴的网址会自动生效。
我建议使用标准的asp.net机制,甚至更好地了解如何创建自定义成员资格提供程序。
答案 2 :(得分:0)
if ((HttpContext.Current.Request.UrlReferrer == null))
{
Response.Redirect("Default.aspx");
}