java - 只允许登录用户访问私有(private)页面

标签 java jquery servlets authentication

我正在从事一个 MIS 项目,目前我正在为此创建一个登录系统。 我在服务器端使用 servlet,在客户端使用 jquery 进行 ajax 调用。

他们是一个登录页面,首先通过 ajax 调用检查登录状态,如果用户已经登录,则将页面位置更改为“services.html”。

当 services.html 加载时,我再次检查登录状态以及用户是否未登录 然后我将页面位置更改为“Login.html”使用
document.location='Login.html';

代码是这样的

$(document).ready(function() {
$("#login").hide();
    $.post("checkLogin",function(xml) {
    var status = $(xml).find("result").text();
    if (status == "yes") {
       document.location='Login.html';
    }
    else{
        // Do Nothing.
    }
});

现在 services.html 页面的问题是它会在整个页面加载到浏览器后检查登录状态。

我不知道还有什么其他好的方法可以限制未登录用户访问“services.html”页面。由于这个项目相当大,我必须创建大量类似于“services.html”的私有(private)页面,比如“stuInfo.html”,用于访问学生信息等。

任何人请告诉我任何好的方法。

最佳答案

你应该在服务器端检查这个,而不是在客户端。 JavaScript 在客户端运行,可禁用、可破解和可欺骗。您不希望您的应用程序如此脆弱。

将所有受限制的页面放在某个文件夹中,例如/secured然后创建一个 Filter映射到<url-pattern>/secured/*并检查登录用户在 doFilter() 中是否存在方法。

可以在 servlet-filters tag info page 中找到示例.

关于java - 只允许登录用户访问私有(private)页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4736515/

相关文章:

使用 Python 和 webapp2 的 Jquery 自动完成

java - NullPointerException 尝试设置index.jsp

java - 将对象数组转换为我想要的类的数组

javascript - 从链接中添加/删除 div 类 - jQuery

jquery - 背景图片无法全屏

java - "request"和 "response"变量或值是在 Java EE 中预定义的吗?

java - 刷新jsp页面时再次提交

java - 多部分/表单参数即将为空

java - Xqual 和 Junit : parameters?

java - 在 Eclipse 中,如何更改自动突出显示的颜色? (我把我的意思截图了)