工作原理
下图提供了 Spring Cloud Gateway 工作原理的高级概览:

在 Spring Cloud Gateway Server MVC 中,路由是普通的 WebMvc.fn RouterFunction 实例,它们使用一个特殊的 HandlerFunction 来通过 HTTP 转发请求,该函数定义在 org.springframework.cloud.gateway.server.mvc.handler.HandlerFunctions 中。关于功能 API 的常规用法,请参阅 WebMvc.fn 文档。
除了用于 HTTP 转发的自定义 HandlerFunctions 外,Spring Cloud Gateway Server MVC 还在 org.springframework.cloud.gateway.server.mvc.predicate.GatewayRequestPredicates 中提供了额外的 RequestPredicate 实现,并在 org.springframework.cloud.gateway.server.mvc.filter.FilterFunctions 中提供了 HandlerFilterFunctions 实现。所有可以作为纯 'before' 过滤器的自定义过滤器都在 org.springframework.cloud.gateway.server.mvc.filter.BeforeFilterFunctions 中实现,并在 FilterFunctions 中适配为请求处理器。同样,org.springframework.cloud.gateway.server.mvc.filter.AfterFilterFunctions 中的自定义 'after' 过滤器也在 FilterFunctions 中适配为响应处理器。
此外,还有用于可选过滤器的额外 *FilterFunctions 类,这些过滤器与每个过滤器一同记录。
路由 URI 上定义的任何路径都将被忽略。