Spring 云网关找不到 Fluent Java 路由 API
Spring cloud gateway cannot find Fluent Java Routes API
我正在尝试 Spring-cloud-gateway。在浏览 documentation 时,我发现我们不仅可以在 yml/ properties 文件中配置路由,还可以使用 Fluent Routes API。这是文档中的片段。
@Bean
public RouteLocator customRouteLocator(ThrottleGatewayFilterFactory throttle) {
return Routes.locator()
.route("test")
.predicate(host("**.abc.org").and(path("/image/png")))
.addResponseHeader("X-TestHeader", "foobar")
.uri("http://httpbin.org:80")
.route("test2")
.predicate(path("/image/webp"))
.add(addResponseHeader("X-AnotherHeader", "baz"))
.uri("http://httpbin.org:80")
.route("test3")
.order(-1)
.predicate(host("**.throttle.org").and(path("/get")))
.add(throttle.apply(tuple().of("capacity", 1,
"refillTokens", 1,
"refillPeriod", 10,
"refillUnit", "SECONDS")))
.uri("http://httpbin.org:80")
.build();
}
但是我找不到这个 class Routes
。不确定我是否错过了什么。我正在使用 spring boot 2.0.0.M
7 并且包含 spring-cloud-starter-gateway
依赖项。
有什么想法吗?
Routes
不再可用。将 RouteLocatorBuilder
参数添加到 customRouteLocator
。我会修复文档。
我正在尝试 Spring-cloud-gateway。在浏览 documentation 时,我发现我们不仅可以在 yml/ properties 文件中配置路由,还可以使用 Fluent Routes API。这是文档中的片段。
@Bean
public RouteLocator customRouteLocator(ThrottleGatewayFilterFactory throttle) {
return Routes.locator()
.route("test")
.predicate(host("**.abc.org").and(path("/image/png")))
.addResponseHeader("X-TestHeader", "foobar")
.uri("http://httpbin.org:80")
.route("test2")
.predicate(path("/image/webp"))
.add(addResponseHeader("X-AnotherHeader", "baz"))
.uri("http://httpbin.org:80")
.route("test3")
.order(-1)
.predicate(host("**.throttle.org").and(path("/get")))
.add(throttle.apply(tuple().of("capacity", 1,
"refillTokens", 1,
"refillPeriod", 10,
"refillUnit", "SECONDS")))
.uri("http://httpbin.org:80")
.build();
}
但是我找不到这个 class Routes
。不确定我是否错过了什么。我正在使用 spring boot 2.0.0.M
7 并且包含 spring-cloud-starter-gateway
依赖项。
有什么想法吗?
Routes
不再可用。将 RouteLocatorBuilder
参数添加到 customRouteLocator
。我会修复文档。