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