我想在调用给定路由时调用以下方法。如何修改/重写路由的路径?
邮递员/浏览器中的URL:";http://localhost:8080/compliance/status/{id}";
要调用的实际URL:https://m.com/v1/myPage/getByBillOfLadingId/{id}
public RouteLocator gatewayRoutes(RouteLocatorBuilder builder) {
return builder.routes()
.route(r -> r.path("/**")
.uri("https://m.com/v1/myPage/getByBillOfLadingId/"))
.build();
}
使用重写路径过滤器
@Bean
public RouteLocator gatewayRoutes(RouteLocatorBuilder builder) {
return builder.routes()
.route(r -> r.path("/**")
.filters(f -> f.rewritePath(".*", "/v1/myPage/getByBillOfLadingId/"))
.uri("https://m.com"))
.build();
}
SetPath过滤器可能也很有用。