C# 拒绝用户在登录后返回

C# 拒绝用户在登录后返回,c#,asp.net,authentication,browser,back-button,C#,Asp.net,Authentication,Browser,Back Button,在我的应用程序登录后,我进入主页。但在主页上,如果我再次按下浏览器的后退按钮,系统会将我发送到登录页面 我如何才能抵制我的用户这样做。如果他们在用户登录时按了后退按钮,系统会将其重新发送到同一页面,而不是登录页面。在登录页面中添加一个片段,检查用户是否已登录。如果他/她是;然后将用户重定向到登录页面 // In the login page protected void Page_Load(object sender, EventArgs e) { if (User.Identity.I

在我的应用程序登录后,我进入主页。但在主页上,如果我再次按下浏览器的后退按钮,系统会将我发送到登录页面


我如何才能抵制我的用户这样做。如果他们在用户登录时按了后退按钮,系统会将其重新发送到同一页面,而不是登录页面。

在登录页面中添加一个片段,检查用户是否已登录。如果他/她是;然后将用户重定向到登录页面

// In the login page
protected void Page_Load(object sender, EventArgs e)
{
    if (User.Identity.IsAuthenticated)
           Response.Redirect("~/Default.aspx");
}

在登录页面中添加一个代码段,检查用户是否已登录。如果他/她是;然后将用户重定向到登录页面

// In the login page
protected void Page_Load(object sender, EventArgs e)
{
    if (User.Identity.IsAuthenticated)
           Response.Redirect("~/Default.aspx");
}

不要那样做;你唯一能做到的就是让人讨厌


后退按钮应该后退。

不要这样做;你唯一能做到的就是让人讨厌


后退按钮应该返回。

在Login.aspx页面顶部,添加以下行以防止浏览器缓存登录页面:

<%@ OutputCache Location="None" NoStore="True" %>

在Login.aspx页面顶部,添加以下行以防止浏览器缓存登录页面:

<%@ OutputCache Location="None" NoStore="True" %>

你为什么要那样?想象你自己是一个这样的网站的用户-你真的希望当你按下后退按钮时该网站无视/忽略吗?如果你像oracle论坛一样登录到该网站,你会看到,当你第一次登录论坛主页时,如果你按下后退按钮,它会将你发送到错误页面。我正在尝试实现它,比如将用户放在主页上。你为什么要这样做?想象你自己是一个这样的网站的用户-你真的希望当你按下后退按钮时该网站无视/忽略吗?如果你像oracle论坛一样登录到该网站,你会看到,当你第一次登录论坛主页时,如果你按下后退按钮,它会将你发送到错误页面。我正在尝试实现它,喜欢把用户放在主页上。谢谢回复。我已经添加了这些代码片段,但它不起作用,因为如果我在主页中按下后退按钮,它不会调用登录页面的页面加载。我将System.Diagnostics.Debug.WriteLine放在页面_Load中,以查看是否正在调用它。但是这个语句没有打印任何内容,这意味着它没有被调用。请检查正确的方法签名。也可使用AutoEventWireup=true AutoEventWireup之前已设置为true。感谢回复。我已经添加了这些代码片段,但它不起作用,因为如果我在主页中按下后退按钮,它不会调用登录页面的页面加载。我将System.Diagnostics.Debug.WriteLine放在页面_Load中,以查看是否正在调用它。但是这个语句没有打印任何内容,这意味着它没有被调用。请检查正确的方法签名。还可使用AutoEventWireup=true AutoEventWireup之前已设置为true。