shiro 登录 过滤器 返回json
2018-01-11 11:01
267 查看
/** * 表示访问拒绝时是否自己处理,如果返回true表示自己不处理且继续拦截器链执行,返回false表示自己已经处理了(比如重定向到另一个页面) * @param request * @param response * @return * @throws Exception */ @Override protected boolean onAccessDenied(ServletRequest request, ServletResponse response) throws Exception { if (this.isLoginRequest(request, response)) { if (this.isLoginSubmission(request, response)) { return this.executeLogin(request, response); } else { return true; } } else { if(AjaxUtil.isAjaxRequest(request)){ response.setContentType("application/json;charset=UTF-8"); response.getWriter().print("你咩有登录,跳转到登录页面"); }else{ this.saveRequestAndRedirectToLogin(request, response); } return false; } }
请先阅读点击打开链接
在自己实现的form登录过滤器里加上ajax提交验证,如果是ajax验证则返回json数据即可
在父类FormAuthenticationFilter 里onAccessDenied该方法是直接调用saveRequestAndRedirectToLogin
我这里做了ajax验证判断,这是登录过滤器,所以我直接返回没有登录信息,如果有其他过滤器 同理即可
相关文章推荐
- shiro修改没有登录或者session失效,根据ajax返回json
- shiro修改没有登录或者session失效,根据ajax返回json
- 《Shiro+Json Web Token》----用多线程优化登录
- Shiro Ajax请求没有权限返回JSON,没有登录返回JSON
- shiro学习笔记 过滤器 shiro 表单 验证码 登录
- 微博第三方登录 curl post传值 处理返回的json数据
- .NET MVC 登录提交返回json实体
- shiro拦截AJAX的返回json字符串
- JWT生成JsonWebToken登录令牌并使用自定义过滤器验证(包含跨域设置)
- controller类中使用json返回错误码,实现用户登录
- .NET MVC 登录提交返回json实体
- 使用shiro的的表单过滤器重写shiro默认的认证规则来实现先验证验证码再验证登录所遇到的问题
- 《Shiro+Json Web Token》----用多线程优化登录
- Unity登录服务器及处理返回的json数据
- shiro 返回json字符串 + 自定义filter
- 新浪微博登录返回的json对象
- Shiro Ajax请求没有权限返回JSON,没有登录返回JSON
- Servlet 过滤器应用实例二 检查登录信息并向客户端返回script
- shiro 自定义过滤器,拦截过期session的请求,并且以ajax形式返回
- java通过url调用远程接口返回json数据,有用户名和密码验证