我有一个用例,我必须通过该消息中的字段预先过滤soap请求,并在该路由上添加基于IP的速率限制器。我正在使用Spring Cloud Gateway 2.0.0.RC2
我用readBody()方法预过滤肥皂请求,但我不知道如何在这条路线上添加速率限制器
@Bean
public RouteLocator wsRouteLocator(RouteLocatorBuilder builder, RequestRateLimiterGatewayFilterFactory rl) {
return builder.routes()
.route(r -> r.path("/services/**")
.and()
.readBody(String.class, s -> {
try {
// Verify xml message
} catch (XPathExpressionException e) {
e.printStackTrace();
return false;
}
})
.uri("http://10.60.96.56:9444")
)
.build();
我找到了一个使用Spring Cloud 2.0.0.M4的guide。不幸的是,我在Gateway 2.0.0.M4中找不到readBody()方法。 有人可以告诉我如何在Spring Cloud Gateway中使用RateLimiter吗?