CORS에 대한 작은 앎
##CORS에 대한 작은 앎
Why write this
- CORS 관련 에러를 겪으면서 구글링으로 방법을 찾았지만 조금 놓칠수 있는 부분을 기록 하려고 합니다.
CORS 란 무엇인가?
- Cross Control Allow Origin
- 쉽게 이해한 바로는 우리가 서버에 어떠한 요청을 할때 header 에 refer 라는 값을 가지고 이동을 하는데 서버에서는 이 값을 체크해서 자신과 같은 서버 와 화이트리스트에서 온 요청이 아니라면 요청을 거절 합니다.
- CORS 에러를 겪은 경우는 개발중인 프론트엔드에서 / 웹 브라우저에서 자신이 속한 도메인이 아닌 서버로 요청을 보낼때 막는 경우 입니다.
- 이럴때는 서버에서의 ( 여기에서는 백엔드 api 서버의 경우 입니다. ) 설정이 필요합니다.
설정하는 방법은 사용하는 프레임워크의 미들웨어 등에서 respond 에
res.set(‘Access-Control-Allow-Credentials’, true); res.set(“Access-Control-Allow-Origin”, “*”); res.set(‘Access-Control-Allow-Methods’, ‘OPTIONS,GET,PUT,POST,DELETE’); res.set(“Access-Control-Allow-Headers”, “access-token,X-Requested-With,Origin, Cookie, Authorization, Content-Type, Accept”);
- 프론트 엔드와 백엔드를 api 로 연결하고 cloud instance 를 통해서 서버를 나누기 때문에
https://developer.mozilla.org/ko/docs/Web/HTTP/Access_control_CORS
마치며
- 일단은 글을 보고도 적용을 잘 하진 못한 것은 이해가 부족 했다고 생각합니다.
- 모든 글을 읽을때 하나 하나의 의미를 좀 더 생각해 보고 개선 여부에 대해서 확인을 해봐야 한다고 생각합니다.
출처
-
https://www.codetinkerer.com/2015/12/04/choosing-an-http-status-code.html https://gluu.org/docs/ce/admin-guide/cors/ https://javaplant.tistory.com/18
-
내용은 아래만 충족되면 올리자.
- http api flow 흐름
- 서버에서 허용된 값들 확인 하는것
- 허용값 확인하고 요청하고 응답받고 2. 각각의 언어 별로 어떻게 설정 하는지 . golnag, nodejs , 시간이 되면 spring boot 정도까지만
댓글남기기