2017-06-15 4 views

Antwort

1

Von dem, was ich von der Frage verstehen konnte, suchen Sie einige Informationen von Web-Filter abzurufen (wie OncePerRequestFilter des Frühlings oder so)

die Methodennamen oder Klassennamen von Anforderung in Filtermethode abrufen

An diesem Punkt gibt es keine Klasse oder Methode, es ist nur ein httpInputStream. Alles, was Sie tun können, ist, nur Byte-Operationen, oder lesen Sie es als String und tun String-Operationen oder deserialisieren es zu mehr Strukturierte (z. B. mit Jackson Deserialize JSON-String zu Java-Objekte/Verwendung von JAXB deserializing XML zu Java-Objekte)

+0

Ich möchte Method Name dieser Anfrage URL. Es ist eine Federstütze API. Ich möchte die Methode abrufen, die es zugeordnet hat. –

+0

Sie wollen die Feder-Mvc-Controller-Methode (die diente/wird dienen diese Anfrage) in einem Web-Filter? Beim Webfilter haben Sie keine Ahnung. Wenn Ihr Webfilter nach den Spring-MVC-Filtern kommt, haben Sie einige Optionen. Entweder können Sie den Methodennamen basierend auf der Antwortstruktur ableiten oder Sie können eine Kopfzeile hinzufügen die Antwort auf Ihrem Controller, so dass Sie die Methode identifizieren können, die die Anfrage –

+0

leistete mir den Anwendungsfall dieser Anforderung, wahrscheinlich kann ich helfen –

0

Ich bin in der Lage zu erreichen, unter Verwendung von Snippet. Danke für deine Zeit.

RequestMappingHandlerMapping mappings1 = (RequestMappingHandlerMapping) ApplicationContextHolder.getBean("requestMappingHandlerMapping"); 
     Map<RequestMappingInfo, HandlerMethod> handlerMethods = mappings1.getHandlerMethods(); 
     HandlerExecutionChain handler = mappings1.getHandler(httpServletRequest); 
     if(Objects.nonNull(handler)){ 
      HandlerMethod handler1 = (HandlerMethod) handler.getHandler();} 
Verwandte Themen