首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

HandlerInterceptor spring -排除管理端口上的请求

HandlerInterceptor是Spring框架中的一个拦截器接口,用于在请求处理的不同阶段进行拦截和处理。它可以在请求到达控制器方法之前或之后执行一些操作,例如身份验证、日志记录、性能监控等。

在排除管理端口上的请求时,可以通过HandlerInterceptor来实现。具体步骤如下:

  1. 创建一个实现HandlerInterceptor接口的拦截器类,例如ExcludeAdminPortInterceptor。
  2. 在该类中重写preHandle方法,在该方法中判断请求的端口号是否为管理端口号。
  3. 如果是管理端口号,则返回false,表示拦截该请求;如果不是管理端口号,则返回true,表示放行该请求。
  4. 在Spring配置文件中配置该拦截器,将其应用到需要排除管理端口请求的路径上。

以下是一个示例代码:

代码语言:txt
复制
public class ExcludeAdminPortInterceptor implements HandlerInterceptor {
    private static final int ADMIN_PORT = 8080; // 管理端口号

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        int port = request.getServerPort();
        if (port == ADMIN_PORT) {
            // 管理端口上的请求,进行拦截处理
            response.setStatus(HttpServletResponse.SC_FORBIDDEN); // 返回403禁止访问状态码
            return false;
        }
        return true; // 非管理端口上的请求,放行
    }
}

在Spring配置文件中配置拦截器:

代码语言:txt
复制
<mvc:interceptors>
    <mvc:interceptor>
        <mvc:mapping path="/**"/> <!-- 拦截所有请求 -->
        <bean class="com.example.ExcludeAdminPortInterceptor"/>
    </mvc:interceptor>
</mvc:interceptors>

这样,当请求到达时,拦截器会首先判断请求的端口号,如果是管理端口号则返回403禁止访问状态码,否则放行请求。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云负载均衡(CLB)。

  • 腾讯云云服务器(CVM):提供弹性、可靠的云服务器,可根据业务需求灵活调整配置和规模。产品介绍链接:腾讯云云服务器
  • 腾讯云负载均衡(CLB):实现流量分发和负载均衡,提高应用的可用性和性能。产品介绍链接:腾讯云负载均衡

注意:以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

跟我学Springboot开发后端管理系统8:Matrxi-Web权限设计实现

它就是你服务端的私钥,在任何场景都不应该流露出去。一旦客户端得知这个secret, 那就意味着客户端是可以自我签发jwt了。...初步验证Token 当前端的请求达到Matrix-Web后端服务器的时候,我们Spring MVC的HandlerInterceptor初步校验Token 是否存在。...Mvc的HandlerInterceptor就可以实现初步的判断请求是否携带了Token,哪些请求是白名单请求,不需要验证Token的。...权限判断 当请求通过Spring MVC的HandlerInterceptor接口,请求会进入到具体的Controller层。...怎么使用 在Matrix-Web管理后台中创建角色需要ROLE_ADMIN角色,在创建角色的接口上加上注解@HasPermission(hasRole = “ROLE_ADMIN”)。

65130

【二十二】springboot整合拦截器实战并对比过滤器

postHandle:用于在将响应发送到客户端之前执行操作,就是控制器执行完之后返回数据时执行。 afterCompletion:在完成请求和响应后执行操作。...1、拦截器是spring里面的,归于spring管理,所有他可以引入spring管理的其他bean直接使用,而过滤器不行,如下: 新增一个拿来测试的归spring管理的service ​​...HttpServletResponse response, Object handler) throws Exception { //相比过滤器,拦截器可以在方法内使用反射机制获取目标接口上的信息...spring容器,导致加载过滤器后,bean对象还是空的;有的说是因为过滤器属于javax.servlet下面的,不归spring容器管理。...过滤器也有方法引入spring的bean对象来使用,这里就不展开了。 2、拦截器是spring在基于反射机制实现的,过滤器是基于servlet的回调实现的。

35510
  • Java 过滤器和拦截器

    过滤器 概念: 滤器位于客户端和web应用程序之间,用于检查和修改两者之间流过的请求; 在请求到达Servlet/JSP之前,过滤器截获请求; 作用:在客户端的请求访问后端资源之前,拦截这些请求(添加处理...; } } 在Application里面引入 @ServletComponentScan 拦截器 编写一个简单的拦截器处理类,请求的拦截是通过HandlerInterceptor 来实现,看到HandlerInterceptor...,并通过addPathPatterns、excludePathPatterns等属性设置需要拦截或需要排除的 URL。...排除的路径 String[] excludePathPatterns = { "" }; registry.addInterceptor...而拦截器(Interceptor) 它是一个Spring组件,并由Spring容器管理,并不依赖Tomcat等容器,是可以单独使用的。

    87530

    ​Spring拦截器

    是一个运行在web服务器或者应用服务器上的一个应用程序,用来动态处理客户端请求的资源。...作用: 在执行请求之前执行一段代码 是否让客户端访问目标资源 调用目标资源以后执行一段代码(通过生命周期函数完成) Filter存在四种拦截方式 REQUESR 默认值,代表直接访问某个servlet...实现方式: 通过实现HandlerInterceptor接口,重写内部的三个方法 preHandler。在访问Controller之前执行,可以用来拦截请求 postHandler。...在视图加载完成或数据返回完成以后执行 1.3区别 场景 Filter Interceptor 执行机制 函数回调 Java反射 执行场景 几乎所有的servlet请求都可使用 只能使用在spring定义的...2.SpringBoot使用拦截器 “SpringBoot对MVC进行了自动配置,当需要使用拦截器的时候,需要在WebMvcConfigurer实现类中添加自定义的拦截器,并定义拦截路径和排除路径 //

    75410

    Mock11-拦截器服务实现(二)事半功倍的WebMvcConfigurer

    类和方法介绍 WebMvcConfigurer 接口是 Spring MVC 中的一个关键接口,它允许我们通过实现该接口来自定义和配置 Spring MVC 的行为。...这行我们排除了以/public/开头的请求,这意味着这些请求将不会被拦截。 } 这段代码表示拦截了所有请求(除了以/public/开头的请求)。...在拦截器实现中,您可以添加自定义的逻辑来处理请求前、请求后的操作,例如身份验证、日志记录等。 如上一节 HandlerInterceptor 讲解中,主要用到的就是此配置。..."header2") // 允许的请求头部信息 .exposedHeaders("header3") // 允许暴露给客户端的响应头部信息...前文导读 Mock10-拦截器服务实现(一)探索HandlerInterceptor Mock09-项目管理(五)搜索、删除和Table优化 Mock08-项目管理(四)下篇:自定义Component组件

    39010

    【JavaEE进阶】拦截器与统一功能处理

    Spring拦截器 针对以上问题,Spring中提供了具体的实现拦截器:HandlerInterceptor.拦截器的实现分为两个部分: 创建自定义拦截器,实现HandlerInterceptor接口的...当我们想要排除所有的静态文件,静态文件包含图片文件,前端的JS和CSS等文件,这个时候我们不可能将每种格式的文件都手动进行排除,这样工作量也太大了(图片文件存在几十种格式),想要将这些文件排除掉我们可以将这个静态文件放入项目的...这意味着无论在哪个控制器方法或服务方法中抛出异常,都可以在统一的地方进行处理,从而减少代码冗余。 统一错误响应:统一的异常处理机制可以确保应用程序返回一致的错误响应给客户端。...这样做可以提高用户体验,让客户端能够更容易地理解和处理错误情况。 异常日志记录:通过统一的异常处理,可以方便地实现异常的日志记录。...这个注解提供了一种集中管理和统一处理全局范围内操作的方式,在引用程序中起到了很好的代码复用和统一管理的作用。

    27830

    基于拦截器实现线上演示站点只能查看不可操作得要求

    在博主 newbee-mall-pro 这个项目中提供了线上演示站点,演示用户按照提供的后台用户账号/密码可以登录到管理后台,用户登录后台可以查看后台数据,但是不能让用户可以修改、删除、新增数据。...为了在已有项目基础上达到这个要求而不失简洁,博主决定基于 Spring 得拦截器实现了的线上演示站点得只能查看不可操作得要求,当前环境说明如下: Spring boot 版本 3.0.2 演示项目地址:...excludePathPatterns("/admin/dist/**") .excludePathPatterns("/admin/plugins/**"); } } 如上代码展示,我们指定了管理后台请求路径中一定包含得.../admin 前缀作为指定拦截路径,这样就会拦截后台全部请求,然后再排除路径中,排除掉我们希望用户可以看到的列表数据请求路径,这样就实现了线上演示站点只能查看不能操作得需求。...:false} 四、总结 其实为了实现线上演示站点只能查看不可操作得要求,还有很多别的方式,比如在一个包含 rbac 权限管理的后台项目中我们只需要配置用户对菜单按钮访问权限也能达到这个要求。

    28640

    设计模式 | 行为型 | 职责链模式

    两者都依赖递归组合将需要执行的操作传递给一系列对象。 责任链的管理者可以相互独立地执行一切操作,可以随时停止传递请求。 装饰可以在遵循基本接口的情况下扩展对象的行为。但无法中断请求的传递。...客户端可以自行组装链或者从其他对象处获得预先组装好的链。 可以使用链表来存储处理器,也可以使用数组来存储处理器。 如果链上的某个处理器能够处理这个请求,可以选择停止传递或者继续传递处理。...response, FilterChain chain) throws IOException, ServletException { System.out.println("拦截客户端发送来的请求...Spring Interceptor 是 Spring MVC 框架的一部分,由 Spring MVC 框架来提供实现。...客户端发送的请求,会先经过 Servlet Filter,然后再经过 Spring Interceptor,最后到达具体的业务代码中。

    56510

    SpringMVC开发 知识点速查

    将请求映射到Handler,映射 HandlerInterceptor 处理器拦截器 HandlerExcutionChain 处理器执行链,拦截器 HandlerAdapter 处理器适配器,转换...ModelAndView 装载模型数据和视图信息 ViewResolver 视图解析器,渲染给客户端 SpringMVC实现流程 客户端请求被DispatcherServlet接收 DispatcherServlet...将请求映射到Handler 生成Handler和HandlerInterceptor 返回HandlerExecutionChain(Handler+HandlerInterceptor) DispatcherServlet...REST架构 RESTful核心内容: 资源URI 资源表述:资源在客户端和服务器之间传输 状态转移:资源在服务端变化 RESTful架构特点: 统一了客户端访问资源的接口 url简介易懂易扩展 有利于不同系统之间的资源共享...拦截器是使用JDK动态代理实现的,拦截的是对应调用方法的拦截,属于Spring,可以用Spring特性。

    41420

    Spring Boot 2.X(九):Spring MVC - 拦截器(Interceptor)

    拦截器 1.简介 Spring MVC 中的拦截器(Interceptor)类似与 Servlet 开发中的过滤器 Filter,它主要用于拦截用户请求并作相应的处理,它也是 AOP 编程思想的体现,...2.定义实现类 拦截器有两种实现方式: 1.实现 HandlerInterceptor 接口 2.继承 HandlerInterceptorAdapter 抽象类(看源码最底层也是通过 HandlerInterceptor...4.应用场景 1.日志记录:记录请求信息的日志,以便进行信息监控、信息统计、计算PV(Page View)等; 2.登录鉴权:如登录检测,进入处理器检测检测是否登录; 3.性能监控:检测方法的执行时间;...3.拦截器只能对Controller请求起作用,而过滤器则可以对几乎所有的请求起作用。 4.拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。...原文标题:Spring Boot 2.X(九):Spring MVC - 拦截器(Interceptor) 原文地址: https://www.zwqh.top/article/info/18

    1.8K41

    Spring Boot中使用拦截器(七)

    引言 拦截器(Interceptor)是Spring MVC框架中的一个强大功能,允许在请求处理的各个阶段进行逻辑处理。例如,可以在请求到达控制器之前进行权限校验,在请求完成之后进行日志记录等。...Spring Boot中使用拦截器 1.1 拦截器的快速使用 1.1.1 定义拦截器 拦截器类需要实现HandlerInterceptor接口,该接口提供了三个方法:preHandle、postHandle...A: 拦截器(Interceptor)是Spring MVC中的组件,可以在请求到达控制器之前和之后进行处理。...拦截器更适合于处理Spring MVC相关的逻辑,而过滤器则适用于处理所有类型的请求,包括静态资源。 Q: 拦截器可以处理哪些场景?...配置拦截器时排除静态资源路径 示例代码见上文 判断用户登录 在拦截器中检查用户的会话信息 示例代码见上文 取消拦截操作 根据请求路径条件决定是否拦截请求 示例代码见上文 总结 本文通过详细的示例和解释

    11010

    SpringMVC之拦截器和异常处理

    SpringMVC拦截器的简介 Spring MVC中的拦截器(Interceptor),它主要用于拦截用户请求并作相应的处理。...其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;同时还可进行逻辑判断,如用户是否已经登陆...在SpringMVC 中定义一个Interceptor 非常简单,主要有两种方式, 第一种方式是要定义的Interceptor类要实现了Spring 的HandlerInterceptor 接口,或者是这个类继承实现了...HandlerInterceptor 接口的类,比如Spring 已经提供的实现了HandlerInterceptor 接口的抽象类HandlerInterceptorAdapter ; 第二种方式是实现...实现了Spring 的​HandlerInterceptor​ 接口或者继承实现了HandlerInterceptor 接口的(比如抽象类HandlerInterceptorAdapter )。 ​

    12210

    腾讯面试:过滤器和拦截器的区别是什么?答不上来,如鲠在喉?看看这篇吧

    「Spring MVC PART1 过滤器」 在Spring MVC中,过滤器(Filter)是一种用于拦截请求和响应的组件,可以在请求到达控制器之前或响应发送给客户端之前对它们进行处理...响应修改:在响应发送给客户端之前修改响应的内容或状态码。 资源压缩:对响应内容进行压缩,减少网络传输的数据量。 请求转发:将请求转发到不同的URL或控制器。...响应修改:在响应发送给客户端之前修改响应的内容或状态码。 事务管理:管理事务的开始和结束,确保数据的一致性。 性能监控:监控请求处理时间,分析性能瓶颈。....excludePathPatterns("/ignore", "/api/**"); // 排除某些路径 } } 注意事项 拦截器的preHandle方法可以决定是否继续执行请求链...拦截器:基于Spring框架,实现org.springframework.web.servlet.HandlerInterceptor接口。

    10410

    Spring系列十:Spring MVC深度学习

    HandlerExecutionChain:处理器执行链,包括两部分内容:Handler 和 HandlerInterceptor(系统会有一个默认的 HandlerInterceptor,如果需要额外设置拦截...ViewResolver:视图解析器,DispatcheServlet 通过它将逻辑视图解析为物理视图,最终将渲染结果响应给客户端。 29.Spring MVC 的工作流程? ​...编辑 Spring MVC的工作流程 客户端向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet(也叫中央控制器)。...DispatcherServlet将模型数据填充到视图中 DispatcherServlet将结果响应给客户端 Spring MVC 虽然整体流程复杂,但是实际开发中很简单,大部分的组件不需要开发人员创建和管理...ModelAndView大体上相同,但是细节上有一些不同: ​ 编辑 Spring MVC Restful请求响应示意图 客户端向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet

    39500

    SpringBoot统一功能处理

    ❤️❤️❤️ Spring + Spring MVC + MyBatis专栏 本章是讲Spring Boot 统⼀功能处理模块,也是 AOP 的实战环节,要实现的目标有以下 3 个: 使用拦截器实现用户登录权限的统一验证...2、Spring AOP 用户统⼀登录验证的问题 说到统⼀的用户登录验证,我们想到的第⼀个实现方案是 Spring AOP 前置通知或环绕通知来实现,具体实现代码如下: import org.aspectj.lang.ProceedingJoinPoint...(我们要对⼀部分方法进行拦截,而另⼀部分方法不拦截,如注册方法和登录方法是不拦截的,这样 的话排除方法的规则很难定义,甚至没办法定义)。...Spring 拦截器 对于以上问题 Spring 中提供了具体的实现拦截器:HandlerInterceptor,拦截器的实现分为以下两个步骤: 创建自定义拦截器,实现 HandlerInterceptor...excludePathPatterns:表示需要排除的 URL。 说明:以上拦截规则可以拦截此项目中的使用 URL,包括静态文件(图片文件、JS 和 CSS 等文件)。

    22330
    领券