@Override public Mono<HandlerMethod> getHandlerInternal(ServerWebExchange request) { String path = request.getRequest().getPath().pathWithinApplication().value(); if (StringUtils.hasText(prefix) && !path.startsWith(prefix)) { return Mono.empty(); } Mono<HandlerMethod> handler = super.getHandlerInternal(request); if (path == null) { return handler; } if (path.startsWith(prefix)) { path = path.substring(prefix.length()); } Object function = findFunctionForGet(request, path); if (function == null) { function = findFunctionForPost(request, path); } if (function != null) { if (logger.isDebugEnabled()) { logger.debug("Found function for POST: " + path); } request.getAttributes().put(WebRequestConstants.HANDLER, function); } Object actual = function; return handler.filter(method -> actual != null); }
@Override public Mono<HandlerMethod> getHandlerInternal(ServerWebExchange request) { String path = request.getRequest().getPath().pathWithinApplication().value(); if (StringUtils.hasText(prefix) && !path.startsWith(prefix)) { return Mono.empty(); } Mono<HandlerMethod> handler = super.getHandlerInternal(request); if (path == null) { return handler; } if (path.startsWith(prefix)) { path = path.substring(prefix.length()); } Object function = findFunctionForGet(request, path); if (function == null) { function = findFunctionForPost(request, path); } if (function != null) { if (logger.isDebugEnabled()) { logger.debug("Found function for POST: " + path); } request.getAttributes().put(WebRequestConstants.HANDLER, function); } Object actual = function; return handler.filter(method -> actual != null); }