0

我的应用程序中有 2 个页面:Login.aspx 和 Home.aspx。

现在,如果用户没有登录,他不应该从 Web 浏览器访问 Home.aspx。

我知道这可以通过会话实现,但不知道如何实现。

让我知道该怎么做?

谢谢!

4

3 回答 3

0

我处理这个问题的方法是在成功登录时设置一个令牌。然后在每个页面的加载事件中我检查是否设置了令牌。如果没有令牌,他们会被重定向。根据应用程序的性质,我会将它们发送到未经授权的页面或登录屏幕。

通常我将令牌保留在会话中,但如果您想允许用户在会话中保持他们的登录,那么浏览器 cookie 也应该可以工作。

于 2011-04-15T13:35:45.833 回答
0

我不知道你到底想要什么,但这是一个解决方案 1. 像这样成功登录后创建 seesion 变量

Session["username"] = textbox1.text;
  1. 在您创建会话变量后,请使用

    Server.Transfer()

代码中的方法

这是我目前知道如何做的唯一方法,祝你好运

于 2011-04-15T14:21:26.607 回答
0

您可以在登录后使用该方法创建会话

HttpSession obj1=request.getSession();

注意这里这个方法没有参数。

现在转到调用主页的 servlet 或 jsp 并使用该方法在那里创建另一个会话

HttpSession obj2=request.getSession(false);

请注意,这里我采用了一个参数false,如果用户在登录时没有创建会话,这意味着他还没有登录,这将阻止用户。

现在检查:

if(obj2.isNew()){ response.Redirect(loginpage url)}
于 2015-04-12T13:19:06.547 回答