【JAVA】网关的管理原理和微服务的Interceptor区分

1. 网关是怎么区分要管理的服务?

网关是通过 application.yml 里的路由配置 来区分的,比如:

yaml

复制代码
spring:
  cloud:
    gateway:
      routes:
        # APP端网关的路由,只转发到APP相关服务
        - id: app-search
          uri: lb://leadnews-search
          predicates:
            - Path=/api/search/**
        # 自媒体网关的路由,只转发到自媒体相关服务
        - id: wemedia-news
          uri: lb://leadnews-wemedia
          predicates:
            - Path=/api/wemedia/**

微服务里的拦截器是怎么生效的?

你在 search-service 里写的 WebMvcConfig

java

运行

复制代码
registry.addInterceptor(new AppTokenInterceptor()).addPathPatterns("/**");
  • 这个拦截器只对进入 search-service 的请求生效
  • 不管请求是从哪个网关转过来的,只要进了 search-service,就会走这个拦截器
  • 其他微服务(比如 user-service)有自己的 WebMvcConfig,只拦截自己的请求
相关推荐
anOnion7 小时前
构建无障碍组件之Menu Button pattern
前端·html·交互设计
用户47949283569157 小时前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端
zhangxingchao9 小时前
Kotlin常用的Flow 操作符整理
前端
IT_陈寒11 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
nanxun88612 小时前
记一次诡异的 Docker 容器"串包"故障排查
java
Pedantic12 小时前
SwiftUI 手势笔记
前端·后端
橙子家13 小时前
浏览器缓存之【结构化数据库与缓存】: IndexedDB、Cache storage 和 Storage buckets
前端
user205855615181313 小时前
X6 中边悬浮置顶,规避 `mouseleave` 事件丢失问题
前端
李明卫杭州13 小时前
CSS aspect-ratio 属性完全指南
前端