可以在启动类中注册Bean组件

@Bean
public RouteLocator routeLocator(RouteLocatorBuilder builder) {
   return builder.routes()
           .route(p -> 
               p.path("/api/acct/**")			//请求路径
                .filters(f -> f.stripPrefix(2))		//过滤前缀
                .uri("lb://acctsvi")			//指向的uri
           )
           .route(p -> 
               p.path("/api/msg/**")
                .filters(f -> f.stripPrefix(2))
                .uri("lb://msgsvi")
           )
           .route(p -> 
               p.path("/api/email/**")
                .filters(f -> f.stripPrefix(2))
                .uri("lb://emailsvi")
           )
           .build();
}

透过Builder等方法,使用内建的断言或过滤

路径断言可以通过path指定Ant路径模式

@Bean
public RouteLocator routeLocator(RouteLocatorBuilder builder) {
   return builder.routes()
           .route(p -> 
               p.path("/openhome/**")
                .filters(f -> f.rewritePath("/openhome/(?<remaining>.*)", "/${remaining}"))
                .uri("https://openhome.cc")
            ).build();
}
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐