본문 바로가기

Weekly I Learnd

[W.I.L]항해99 미니프로젝트 1주차

기간

  • 04/09 (금) 오후2시까지 : 다면평가 제출 완료
  • 04/09 (금) : S.A. 완료
  • 04/10 (토) : 튜터 피드백 확인

현재진행상황
-나를보개 / 자랑하개 / 물어보개 2가지 게시판 중 나를 보개와 자랑하개 8~90% 완성
-mbit 90% 완성
-jwt로그인과 프론트 연결작업 거의 완성

[배운것]
-cors 설정
이전 클론 코딩을 하였을 때 그저 모든 오리진을 허용하여 cors 오류가 나지 않아서 어렵지 않구나 했는데
이번에는 분명 모든 오리진을 허용 했는데 cors 오류가 나서 당황했다.
원인을 찾아보니 클론 코딩을 할때 내용을 불러오는 것만 했기 때문에
@CrossOrigin(origins = "*", allowedHeaders = "*")
컨트롤러 위에 이렇게 달아만 주어도 문제가 되지 않았지만
기본적으로 허용이 되는 get과 delete중 get만 사용하여 설정이 간편하였던 것이고

이번에는 crud가 다 들어가면서 method 설정을 다 해주어야 했는데 오픈이 되어 있지 않아서 cors 오류가 났던 것이다.
그래서 패키지를 따로 만들고 webconfig를 만들어 WebConfigurer를 import하고

WebConfigurer = Bean을 커스터마이징(설정)할 수 있는 기능을 제공하는 인터페이스

@Configuration public class WebConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry .addMapping("/**") .allowedOrigins("http://**") .allowedOrigins("https://**") .allowedMethods( HttpMethod.GET.name(), HttpMethod.HEAD.name(), HttpMethod.POST.name(), HttpMethod.PUT.name(), HttpMethod.DELETE.name()); } }