CORS 설정

2021. 12. 11. 23:04(구)공부/SpringBoot

728x90

cross-origin resource sharing

리소스를 제공한 도메인(origin)이 현재 요청하려는 도메인과 다르더라도 요청 허락하는 웹 보안 방침.

 

프론트엔드 서버가 3000이고 백엔드가 8080이면

현재 페이지를 받은 서버가 3000이고 브라우저가 8080으로 리퀘스트를 보내게되면

origin이 3000이기에 거절됨.

 

따라서 백엔드에서 설정이 필요

 

현재 8080은 스프링부트

package com.example.demo.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration // 스프링 빈으로 등록
public class WebMvcConfig implements WebMvcConfigurer{
	private final long MAX_AGE_SECS = 3600;

	@Override
	public void addCorsMappings(CorsRegistry registry) {
		//모든 경로에 대해
		registry.addMapping("/**")
		//origin이 3000인거에 대해
		.allowedOrigins("http://localhost:3000")
		//허용하는 메소드
		.allowedMethods("GET","POST","PUT","PATCH","DELETE","OPTIONS")
		.allowedHeaders("*")
		.allowCredentials(true)
		.maxAge(MAX_AGE_SECS);
	}
	
	
}

허용 범위에 대한 설정을 해줘야함.

728x90

'(구)공부 > SpringBoot' 카테고리의 다른 글

오류  (0) 2021.11.14
entity 설정  (0) 2021.11.10
게시판 - 3 (수정,삭제) 최종  (1) 2021.08.14
게시판 만들기 - 2(페이징)  (2) 2021.08.12
게시판 만들기 - 1  (0) 2021.08.11