Compatible with processing result of legacy plugin
This commit is contained in:
@@ -82,6 +82,11 @@ public class AggregateFilter implements WebFilter {
|
||||
@Override
|
||||
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
|
||||
|
||||
FilterResult pfr = WebUtils.getPrevFilterResult(exchange);
|
||||
if (!pfr.success) {
|
||||
return WebUtils.getDirectResponse(exchange);
|
||||
}
|
||||
|
||||
String serviceId = WebUtils.getBackendService(exchange);
|
||||
if (serviceId == null) {
|
||||
return chain.filter(exchange);
|
||||
|
||||
@@ -87,6 +87,11 @@ public class CallbackFilter extends FizzWebFilter {
|
||||
@Override
|
||||
public Mono<Void> doFilter(ServerWebExchange exchange, WebFilterChain chain) {
|
||||
|
||||
FilterResult pfr = WebUtils.getPrevFilterResult(exchange);
|
||||
if (!pfr.success) {
|
||||
return WebUtils.getDirectResponse(exchange);
|
||||
}
|
||||
|
||||
ApiConfig ac = WebUtils.getApiConfig(exchange);
|
||||
if (ac != null && ac.type == ApiConfig.Type.CALLBACK) {
|
||||
CallbackConfig cc = ac.callbackConfig;
|
||||
|
||||
@@ -177,11 +177,11 @@ public abstract class WebUtils {
|
||||
}
|
||||
|
||||
public static Mono<Void> getDirectResponse(ServerWebExchange exchange) {
|
||||
return (Mono<Void>) exchange.getAttributes().get(WebUtils.directResponse);
|
||||
return exchange.getAttribute(WebUtils.directResponse);
|
||||
}
|
||||
|
||||
public static Map<String, FilterResult> getFilterContext(ServerWebExchange exchange) {
|
||||
return (Map<String, FilterResult>) exchange.getAttribute(FILTER_CONTEXT);
|
||||
return exchange.getAttribute(FILTER_CONTEXT);
|
||||
}
|
||||
|
||||
public static FilterResult getFilterResult(ServerWebExchange exchange, String filter) {
|
||||
|
||||
Reference in New Issue
Block a user