我正在寻找一种方法来对请求执行一些过滤器和谓词,最后简单地返回一个响应给用户,而不是将其路由到特定的URI。例如,用户正在调用 /auth/token并且我的网关有一个过滤器,该过滤器生成一个令牌并转换响应的正文(使用ModifyResponse seBodyGatewayFilterFactory)。当添加一个简单返回response. set完成()
的过滤器时,正文返回空,状态码始终为200。
return (exchange, chain) -> {
return modifyResponseBodyGatewayFilterFactory.apply(c -> c.setRewriteFunction(Object.class, String.class, SomeBody))
.filter(exchange, chain)
.then(exchange.getResponse().setComplete());
}
如何将特定主体返回给用户,而不路由到URI?
提前感谢!
我找不到解决方案,所以我为这个特定的请求创建了一个网络流量控制器。这对我来说是一个足够好的解决方案。