Shiro登录拦截器解析(七)
authc 登录拦截器工作原理 authc 拦截器有 2 个作用: 1> 登录认证 请求进来时,拦截并判断当前用户是否登录了,如果已经登录了放行, 如果没有登录,跳转到 authc.loginUrl 属性配置的路径,注意:默认是 /login.jsp 2> 执行登录认证 请求进来时,如果请求的路径为 authc.loginUrl 属性配置的路径(没配置,默认是 /login.jsp )时,如果当前用户没有登录, authc 这个拦截器会尝试获取请求中的账号跟密码值,然后比对 ini 配置文件或者 realm 中的用户列表,如果比对正确,直接执行登录操作,反之,抛异常,跳转到 authc.loginUrl 指定的路径。 注意:请求中账号与密码必须固定为 username 跟 password(即前端的name字段), 如果需要改动必须额外指定,authc. usernameParam =xxx authc.passwordParam=xxxx authc 登录成功之后处理逻辑 : 注意:登陆成功后要么跳转到已保存路径,要么跳转到/根路径(而不是authc.loginUrl=/login中) authc 登录失败之后处理逻辑 : 以前的做法需要验证登录信息(即匹配账号密码是否正确),现在验证已经交由shiro验证,这里只需要处理错误逻辑就可以了 @WebServlet(name =