💬 들어가기 전에작년 6월 첫 번째 Spring 프로젝트를 진행하며 처음 CORS 오류를 마주했고, WebMvcConfigurer 설정을 통해 해결했다. 이후 프로젝트를 진행하며 Jwt 토큰을 도입하게 되어 토큰 인증용 Interceptor를 만들게 되었다.그런데 이때 preflight 요청이 제대로 처리가 되지 않아 CORS 오류가 또 터져버렸다. preflight 요청은 WebMvcConfigurer가 처리해준다고 생각했는데,Interceptor를 만들었다고 preflight 요청이 처리가 되지 않는 것이 이상했다. 당시에는 엉뚱한 곳에서 원인을 찾고 있었던 것 같고, 엉뚱한 내용을 블로그에 작성했다.(지금 보니까 내용이 아주 엉망이다.)[Spring] filter 기능 구현 후 CORS 에러가 발..
💻 프로그래밍/Spring
💬 들어가기 전에그동안 on-premise 환경에서 개발하다가 처음으로 AWS에 배포를 하게 되었다.서버 구성은 흔히 볼 수 있는 Spring 서버 앞단에 Nginx가 있는 구조다. 그런데 배포가 무사히(?) 되고 이런저런 테스트를 하다가 이상한 부분을 발견했다. 갑자기 유효하지 않은 엔드포인트로 요청을 보내면 어떻게 될까 궁금해서 포스트맨으로 API 요청을 날려봤는데내가 생각했던 Spring MVC 요청 흐름과 달랐다. 🌎 내가 인지하고 있던 Spring MVC 요청 흐름일단 흐름을 크게 정리하면 다음과 같은 흐름으로 처리되는 것으로 알고 있었다.Filter → DispatcherServlet → Interceptor → Controller 관련해서 구글링 해보면 내가 보았던 수많은 블로그들도 똑같..
(24.09.08 추가)작성 후 문제의 원인을 알게되어 별도의 글에 정리했다.[SpringBoot] WebMvcConfiguration의 동작 원리 💬 프로젝트 상황현재 개발중인 프로젝트의 환경은 다음과 같다.SpringBoot3JDK 21Spring Security 사용하지 않음그런데 서버 첫 배포 후, 분명 다음과 같이 WebMvcConfigurer를 통해 설정을 추가해주었는데도프론트와 연동하는 과정 중에 CORS 에러가 발생했다. 설정 코드CorsConfig.java@Configurationpublic class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry regist..
💬 들어가기 전에현재 개발중인 프로젝트의 환경은 다음과 같다.SpringBoot3JDK 21Postgresql, Redis Cluster그리고 각 서비스를 모듈화하여 멀티 모듈 구조로 개발중에 있다.테스트 환경은 테스트 컨테이너로 구성하였는데,이번에 Redis를 연동하면서 테스트 환경을 구성하는데에 어려움을 겪게 되어 그 과정을 기록하고자 한다. ⚙️ 기존 테스트 환경 설정우선 기존 PostgreSQL만 사용했을 때 설정해두었던 것들은 다음과 같다. TestContainers 클래스에 테스트 컨테이너 관련 설정들을 하고,RestAssuredTest 클래스가 TestContainers를 상속받아 테스트 관련 설정을 했다. 이후 실제 테스트 코드를 작성하는 클래스는 RestAssuredTest를 상속받아 ..