모든경로(/**)에 대해 Origin이 http://localhost:3000인 경우 GET, POST, PUT, PATCH, DELETE 메서드를 이용한 요청을 허용한다.
또한 모든 헤더와 인증에 관한 정보(Credential)도 허용한다.
백엔드 애플리케이션에 내용을 추가하면 더이상 CORS 에러가 나지 않는 것을 확인 할 수 있다.
package com.example.springTest.config;
import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configurable //스프링 빈으로 등록
public class WebMvcConfig implements WebMvcConfigurer {
private final long MAX_AGE_SECS = 3600;
@Override
public void addCorsMappings(CorsRegistry registry){
//모든 경로에 대해
registry.addMapping("/**")
//Origin이 http:localhost:3000에 대해
.allowedOrigins("http://localhost:3000")
//GET, POST, PUT, PATCH, DELETE, OPTIONS 메서드를 허용한다.
.allowedMethods("GET","POST", "PUT", "PATCH", "DELETE", "OPTIONS")
.allowedHeaders("*")
.allowCredentials(true)
.maxAge(MAX_AGE_SECS);
}
}