Как зарегистрировать входящий запрос весной MVC - PullRequest
0 голосов
/ 22 мая 2019

У меня есть тело запроса JSON, подобное этому

{  
   "3DSecure":{  
      "paRes":"xxxxxxxxxxxxxxxxxxxxxxx"
   }
}

Я разработал конечную точку для регистрации этого запроса.

@RequestMapping(value = "/logging/requests", method = RequestMethod.POST)
@ResponseBody
public String loggingIncomingRequest(@RequestBody AxiPayCargilsRequest request,
                                         HttpServletRequest servletRequest,
                                         ServiceContext serviceContext){

    log.info("!--REQUEST START--!"+request);

    log.info("");
    return null;
}

Как зарегистрировать этот запрос может кто-нибудь помочь мне с уровня создания объекта Спасибо.

Ответы [ 2 ]

0 голосов
/ 22 мая 2019

Используя фильтры, вы можете вдоль всех запросов, поступающих в приложение.

    @Component
    public class SimpleRequestFilter implements Filter {

        private final Logger log = LoggerFactory.getLogger(SimpleCORSFilter.class);

        public SimpleCORSFilter() {
            log.info("SimpleCORSFilter init");
        }

        @Override
        public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
                throws IOException, ServletException {

            // HttpServletRequest request = (HttpServletRequest) req;
            HttpServletResponse response = (HttpServletResponse) res;
            log.info("Request URI: " + request.getRequestURI());
            // Similarily, you can log others properties as required.

            chain.doFilter(req, res);
        }

        @Override
        public void init(FilterConfig filterConfig) {
        }

        @Override
        public void destroy() {
        }

    }

Если вы хотите войти только на указанный API-запрос, вы можете следить за ответом @Chirag Shah.

0 голосов
/ 22 мая 2019

Во-первых, добавьте следующие зависимости в ваш pom.xml

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.11.2</version>
  </dependency>
  <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.11.2</version>
  </dependency>

и затем инициализируйте регистратор во всех ваших классах, где требуется регистрация, например,

private final static Logger logger  = LogManager.getFormatterLogger(YourClassName.class);

Теперь вы можете использовать регистратор, как,

logger.info("Your Logging info");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...