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