diff --git a/docs/SpringCloud/spring-cloud-gateway-source-note.md b/docs/SpringCloud/spring-cloud-gateway-source-note.md index 9727836..ee6a1e9 100644 --- a/docs/SpringCloud/spring-cloud-gateway-source-note.md +++ b/docs/SpringCloud/spring-cloud-gateway-source-note.md @@ -102,13 +102,13 @@ public class GatewayClassPathWarningAutoConfiguration { > > Route 是由 AsyncPredicate 和 GatewayFilter 组成的。而 AsyncPredicate 由 RoutePredicateFactory 生成,GatewayF 创建 ilter 由 GatewayFilterFactory -![RouteLocator](.spring-cloud-gateway-source-note_imgs/RouteLocator.png) +![RouteLocator](../../images/SpringCloud/spring-cloud-gateway-source-note_imgs/RouteLocator.png) > RoutePredicateHandlerMapping 通过 RouteLocator 得到的 `Flux` ,遍历执行`Route.getPredicate().apply(ServerWebExchange)` 返回`true`说明命中了路由规则,将命中的 Route 存到 ServerWebExchange 中,然后执行 FilteringWebHandler 。 > > FilteringWebHandler 的逻辑就是执行 GlobalFilter + GatewayFilter -![Route](.spring-cloud-gateway-source-note_imgs/Route.png) +![Route](../../images/SpringCloud/spring-cloud-gateway-source-note_imgs/Route.png) ### 源码 @@ -633,7 +633,7 @@ public @interface ConditionalOnEnabledPredicate { 因为 @ConditionalOnEnabledGlobalFilter 上标注了 @Conditional,所以在 [ConfigurationClassPostProcessor](https://github.com/haitaoss/spring-framework/blob/source-v5.3.10/note/spring-source-note.md#conditional) 解析配置类时,会执行 `OnEnabledGlobalFilter#matches(ConditionContext,AnnotatedTypeMetadata)` 结果是`true`才会将 bean 注册到 BeanFactory 中 -![OnEnabledComponent](.spring-cloud-gateway-source-note_imgs/OnEnabledComponent.png) +![OnEnabledComponent](../../images/SpringCloud/spring-cloud-gateway-source-note_imgs/OnEnabledComponent.png) ```java /** @@ -1121,7 +1121,7 @@ public class PropertiesRouteDefinitionLocator implements RouteDefinitionLocator 看 PredicateDefinition、FilterDefinition 的构造器,就能明白属性文件为啥可以写 `Weight=group1,8` -![image-20230428141218057](.spring-cloud-gateway-source-note_imgs/image-20230428141218057-1682662351478.png) +![image-20230428141218057](../../images/SpringCloud/spring-cloud-gateway-source-note_imgs/image-20230428141218057-1682662351478.png) ## InMemoryRouteDefinitionRepository @@ -1129,7 +1129,7 @@ InMemoryRouteDefinitionRepository 是由 [GatewayAutoConfiguration](#GatewayAuto RouteDefinitionRepository 的职责是通过缓存的方式记录 RouteDefinition,而不是通过属性 映射成 RouteDefinition。而 [AbstractGatewayControllerEndpoint](#AbstractGatewayControllerEndpoint) 会依赖 RouteDefinitionWriter 的实例,用来缓存通过接口方式注册的 RouteDefinition。 -![RouteDefinitionRepository](.spring-cloud-gateway-source-note_imgs/RouteDefinitionRepository.png) +![RouteDefinitionRepository](../../images/SpringCloud/spring-cloud-gateway-source-note_imgs/RouteDefinitionRepository.png) ```java public class InMemoryRouteDefinitionRepository implements RouteDefinitionRepository { @@ -1186,7 +1186,7 @@ GatewayControllerEndpoint 和 GatewayLegacyControllerEndpoint 是由 [GatewayAut 刷新 RouteDefinition 是会发布 RefreshRoutesEvent 事件,该事件会有 [CachingRouteLocator](#RouteLocator) 处理 -![AbstractGatewayControllerEndpoint](.spring-cloud-gateway-source-note_imgs/AbstractGatewayControllerEndpoint.png) +![AbstractGatewayControllerEndpoint](../../images/SpringCloud/spring-cloud-gateway-source-note_imgs/AbstractGatewayControllerEndpoint.png) ## RouteRefreshListener diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/AbstractGatewayControllerEndpoint.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/AbstractGatewayControllerEndpoint.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/AbstractGatewayControllerEndpoint.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/AbstractGatewayControllerEndpoint.png diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/OnEnabledComponent.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/OnEnabledComponent.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/OnEnabledComponent.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/OnEnabledComponent.png diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/Route.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/Route.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/Route.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/Route.png diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/RouteDefinitionRepository.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/RouteDefinitionRepository.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/RouteDefinitionRepository.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/RouteDefinitionRepository.png diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/RouteLocator.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/RouteLocator.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/RouteLocator.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/RouteLocator.png diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/image-20230428141218057-1682662351478.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/image-20230428141218057-1682662351478.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/image-20230428141218057-1682662351478.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/image-20230428141218057-1682662351478.png diff --git a/docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/image-20230428141218057.png b/images/SpringCloud/spring-cloud-gateway-source-note_imgs/image-20230428141218057.png similarity index 100% rename from docs/SpringCloud/.spring-cloud-gateway-source-note_imgs/image-20230428141218057.png rename to images/SpringCloud/spring-cloud-gateway-source-note_imgs/image-20230428141218057.png