java1 Spring Boot에서 Request 이력 저장하기 클라이언트에서 호출한 Api 이력을 저장해야 하는 요구사항이 있었다. 시스템 관리 화면에서 호출하는 API의 호출 Url, 요청 파라미터, 요청 body를 저장해서 누가 어떤 이벤트를 발생시켰는지 이력을 확인할 수 있어야 했다. 시스템 관리 api 모든 요청에 대해서 저장해야했기 때문에 각 컨트롤러 내부가 아닌 공통 처리가 필요했다. Interceptor가 적용되어 있었기 때문에 Interceptor에서 호출 정보를 저장하면 되겠지 했는데 문제가 있었으니,, 인터셉터에서 바디를 꺼내서 저장 후 내부에서 다시 읽으려고 하면 에러가 팡팡 터졌다는 것 찾아보니 HttpServletRequest의 InputStream 은 한번 읽으면 다시 못 읽기 때문에 다시 읽으려고 하면 에러가 난다고 한다.. 구글링의 결과.. 2023. 1. 9. 이전 1 다음