首页
学习
活动
专区
工具
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 MVCHandlerInterceptor初步校验Token 是否存在。...MvcHandlerInterceptor就可以实现初步判断请求是否携带了Token,哪些请求是白名单请求,不需要验证Token。...权限判断 当请求通过Spring MVCHandlerInterceptor接口,请求会进入到具体Controller层。...怎么使用 在Matrix-Web管理后台中创建角色需要ROLE_ADMIN角色,在创建角色口上加上注解@HasPermission(hasRole = “ROLE_ADMIN”)。

63430

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

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

21710
  • Java 过滤器和拦截器

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

    86030

    Spring拦截器

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

    73810

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

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

    34010

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

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

    24730

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

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

    27040

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

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

    54310

    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.7K41

    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特性。

    40320

    Spring系列十:Spring MVC深度学习

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

    37800

    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 等文件)。

    21130

    Spring Boot使用拦截器:概念与实战

    引言拦截器(Interceptors)在Spring Boot应用中常用于在请求处理前后执行特定代码,如日志记录、认证校验、权限控制等。...拦截器简介拦截器是Spring MVC一部分,用于处理通过DispatcherServlet请求。它可以在Controller处理请求之前、处理完请求后以及响应发送给客户之前进行自定义处理。...Spring Boot实战:配置拦截器环境配置创建Spring Boot项目:使用Spring Initializr创建一个新Spring Boot项目,选择Web依赖。...定义拦截器创建拦截器类:定义一个实现HandlerInterceptor接口拦截器类。...结论通过使用Spring Boot拦截器功能,开发者可以有效地管理和增强请求处理流程。拦截器提供了一个强大机制,用于在请求不同阶段插入自定义逻辑,从而使得应用程序更加灵活和强大。

    17521

    接口请求自定义拦截器配置

    前言 WebMvcConfigurer配置类其实是Spring内部一种配置方式,采用JavaBean形式来代替传统xml配置文件形式进行针对框架个性化定制,可以自定义一些Handler,Interceptor...基于java-based方式spring mvc配置,需要创建一个配置类并实现WebMvcConfigurer 接口。...继承WebMvcConfigurer类并实现api拦截 WebConfiguration 主要用于对除登录API以外接口都进行拦截处理,拦截到所以请求再经过TokenInterceptor进行验证...Configuration public class WebConfiguration implements WebMvcConfigurer { /** * 配置拦截器、拦截路径 * 每次请求到拦截路径...接口拦截器实例配置 TokenInterceptor 主要用于验证请求头信息中是否存在token并解密token查询数据库是否存在该用户 @Component public class TokenInterceptor

    54840

    Ribbon 优缺点是什么

    Ribbon 是 Netflix 开源一款负载均衡组件,可以与 Spring Cloud 进行无缝集成,用于分发服务请求。在使用 Ribbon 进行负载均衡时,有以下优缺点:优点1....自适应Ribbon 可以根据服务实例健康状况,自动选择可用实例进行请求分发。当某个实例不可用时,Ribbon 会自动排除该实例,直到该实例重新恢复正常。3....当 Ribbon 客户发生故障时,整个负载均衡功能将不可用,需要进行故障恢复。2. 性能损耗Ribbon 负载均衡功能会增加客户网络通信开销,同时增加服务网络负荷。...当并发请求较大时,Ribbon 性能损耗会较为明显。3. 依赖管理Ribbon 是 Netflix 公司开发一款组件,对于非 Netflix 公司用户,需要进行依赖管理。...假设我们有两个服务实例,分别运行在不同口上,我们可以通过 Ribbon 实现请求分发。

    56721

    java中什么是过滤器_JAVAweb过滤器

    请求到达servlet之前,进行逻辑判断,判断是否放行到servlet;也可以在一个响应response到达客户之前进行过滤,判断是否允许返回客户。...web项目部署在服务器上,由客户发起请求到部署服务器监听端口,通过监听端口进入服务器,然后再有服务器将请求信息发送给web项目,加载web项目首先要读取web.xml文件,【web.xml中标签读取顺序是...响应请求也是,在servlet处理结束后,返回给客户前触发。...(2)规范不同:Filter是在servlet规范中定义,是Servlet容器支持,而拦截器是在spring容器内,是spring框架支持。...(3)使用资源不同:同其他代码块一样,拦截器也是一个spring组件,归spring管理,配置在spring文件中,因此能使用spring任何资源,独享。

    92830
    领券