java filter 重定向_Java-不带重定向的Shiro过滤器

news/2024/7/24 2:12:03 标签: java filter 重定向

您需要实现自定义的Shiro过滤器.

像这样:

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import java.io.IOException ;

import javax.servlet.http.HttpServletResponse ;

import org.apache.shiro.web.filter.authz.AuthorizationFilter ;

import org.apache.shiro.web.util.WebUtils ;

public class LocalhostFilter extends AuthorizationFilter {

private static final String message = "Access denied.";

@Override

protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) throws Exception {

//do something when access allowed

return true;

}

@Override

protected boolean onAccessDenied(ServletRequest request, ServletResponse response) throws IOException {

HttpServletResponse httpResponse ;

try { httpResponse = WebUtils.toHttp(response); }

catch (ClassCastException ex) {

// Not a HTTP Servlet operation

return super.onAccessDenied(request, response) ;

}

if ( message == null )

httpResponse.sendError(403) ;

else

httpResponse.sendError(403, message) ;

return false ; // No further processing.

}

}


http://www.niftyadmin.cn/n/1468033.html

相关文章

javascript最大值_JavaScript的非值三重奏

javascript最大值Undefined, Null, and NaN are 3 keywords, known as non-values or empty values, that are often a source of buggy code, stress, and confusion for many beginning JavaScript engineers. Part of the reason for that is that they are seldom given th…

java super构造函数_Java 构造函数,super,this,final,static

一、java 创建类是自动生成一个无参数的构造函数自定义构造函数:public 类名(参数列表){}注意:1、构造函数没有返回值2、构造函数名必须和类名一致3、构造函数的访问修饰符一定是public 否则无法实例化4、自定义构造函数时会替代 java 生成的构造函数&am…

React键的常见错误

When first learning React, it’s easy to get tripped up by simple mistakes. Even seasoned developers make mistakes.初学React时,很容易被简单的错误绊倒。 即使是经验丰富的开发人员也会犯错。 One area that is often misunderstood is how to use a key …

超级玛丽java下载_超级玛丽java源码 非本人原创 - 下载 - 搜珍网

压缩包 : SuperMario-master.zip 列表SuperMario-master/SuperMario-master/.classpathSuperMario-master/.projectSuperMario-master/.settings/SuperMario-master/.settings/org.eclipse.core.resources.prefsSuperMario-master/.settings/org.eclipse.jdt.core.prefsSuperMa…

java spring 源码下载_Spring1:Spring简介、环境搭建、源码下载及导入MyEclipse

框架学习前言这个模块是面向Spring的,Spring的学习我是这么想的:1、简单介绍Spring,主要是从网上借鉴一些重点2、尽量说明清楚Spring的使用方法以及细节点3、尽量以自己的理解讲清楚Spring中的一些源代码Spring是什么Spring是一款为了解决企业…

pycharm下配置jupyter_安装anaconda及pycharm 启动Jupyter

昨天重装系统之后记录了配置C环境,今天继续配置Python环境。这个anaconda好啊 有Jupyyter(一个浏览器界面的python,调试相当方便),具体优势见下面链接https://www.zhihu.com/question/27615938一/Anaconda的安装下载Anaconda安装包&#xff0…

python utc时间如何取整_如何在Djang中取整时区软件日期

我试图将默认时区datetime转换为localtime,并在Django视图中将时间取整为15分钟。我有以下循环时间函数:def roundTime(dtNone, dateDeltatimedelta(minutes1)):"""Round a datetime object to a multiple of a timedeltadt : datetime.d…

打字机运行时验证

技术 (TECHNOLOGY) 问题 (The Problem) Every time our application receives some data input via an application boundary at runtime, it should be at least validated against a data scheme. In typed languages like Typescript, it also makes sense to map the input…