comclothing.log
로그인
comclothing.log
로그인
[WIL] CORS란?
컴클로딩
·
2022년 7월 22일
팔로우
0
cors
0
CORS?
CORS(Cross Origin Resource Sharing) : 클라이언트 애플리케이션과 다른 origin을 가진 서버 애플리케이션이 서로 통신할 수 있도록 허용하는 프로토콜
교차 출처 리소스 공유 혹은 교차 출처 자원 공유라고 한다.
여기서 다른 orgin은 뭘까?
다른 origin이란 예를 들어 클라이언트 애플리케이션은 www.mysite.com 으로 올라가 있는 반면 서버 애플리케이션은 www.serverapi.com 으로 올라가 있다고 했을 때 클라이언트와 서버 애플리케이션은 다른 origin을 가졌다고 말합니다.
사실 클라이언트와 서버는 같은 origin을 가진 경우에만 서로 통신을 할 수 있다. 이를 Same Origin Policy 라고도 한다.
그 이유는 클라이언트와 서버의 origin이 달라도 통신을 무조건 허용하면 클라이언트에서 악의적으로 서버에 접근할 가능성이 너무 높기 때문이다.
즉, 보안을 위해서 같은 origin일 때만 통신을 할 수 있는 것이다.
그래서 같은 origin을 가진 경우에만 통신을 허용하여 웹 브라우저에서는 다른 origin을 가진 서버에 API를 호출할려고 하면 요청 자체를 막아버린다.
그런데 클라이언트와 서버가 같은 origin을 가진 경우는 그렇게 많지 않다.
여러가지 이유가 있지만 그 중 프로젝트에서 클라이언트의 크기가 커지면서
클라이언트는 클라이언트데로 별도로 관리하기 위해 별도의 origin을 가지게 되었고
서버는 서버데로 origin을 가지게 된 경우가 그렇다.
물론 보안적인 이슈로 인해 클라이언트와 서버 애플리케이션을 다른 origin에 넣는 경우도 많다.
유저에게는 서버에 직접적으로 접근할 수 있는 모든 방향을 차단하는 것이 좋기 때문이다.
👉🏻 그래서 CORS가 필요한 것이다. 서로 다른 origin에서도 통신이 가능해야하는 상황이 온 것이기 때문이다.
React와 Spring Boot CORS통신 방법
Spring과 React 통신 시에 CORS 에러 해결
https://l4279625.tistory.com/26
해당블로그 글 참고.
[Spring] Spring Security, React를 사용하면서 CORS 허용하는 방법
https://devlog-wjdrbs96.tistory.com/429
리액트 - 스프링부트 연동 CORS 이슈 해결!
https://velog.io/@pjj186/%EB%A6%AC%EC%95%A1%ED%8A%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EC%97%B0%EB%8F%99-CORS-%EC%9D%B4%EC%8A%88-%ED%95%B4%EA%B2%B0
[Spring Security] CORS
https://velog.io/@chullll/Spring-Security-CORS
참고자료
CORS란 무엇인가: CORS는 브라우저 하는 일
https://valuefactory.tistory.com/1141
[Browser] CORS란?
https://beomy.github.io/tech/browser/cors/
CORS란 무엇인가?
https://hannut91.github.io/blogs/infra/cors
CORS란?
https://medium.com/@su_bak/cors%EB%9E%80-f7e1447e97d8
교차 출처 리소스 공유
https://ko.wikipedia.org/wiki/%EA%B5%90%EC%B0%A8_%EC%B6%9C%EC%B2%98_%EB%A6%AC%EC%86%8C%EC%8A%A4_%EA%B3%B5%EC%9C%A0
컴클로딩
어떠한 가치를 창출할 수 있을까를 고민하는 개발자. 주로 Spring으로 개발해요. https://comclothing.tistory.com/ 👈🏻티스토리 블로그로 이전 완료
팔로우
이전 포스트
[WIL] ORM, SQL, MVC
다음 포스트
Spring Pagination으로 무한스크롤 구현
0개의 댓글
댓글 작성