흰 스타렉스에서 내가 내리지

CORS 본문

web.etc

CORS

주씨. 2022. 5. 28. 16:18
728x90

CORS (Cross-Origin Resource Sharing)

클라이언트와 서버의 도메인이 일치하지 않으면, 기본적으로 요청이 차단된다.

클라이언트에서 서버로 요청을 보낼 때만 발생하고, 서버에서 서버로 요청을 보낼 때는 발생하지 않는다. 

 

cors 문제를 해결하기 위해서는 응답헤더에 Access-Control-Allow-Origin 헤더를 넣어야 한다. 

클라이언트 도메인의 요청을 허락하겠다는 의미를 담고 있다. 

 

express 에서는 cors라는 npm 패키지를 사용하면 된다. 

 

 

cors 문제를 해결하는 또 다른 방법으로는 프록시 서버를 이용하는 것이다. 

서버에서 서버로 요청을 보낼 때는 cors 문제가 발생하지 않는 다는 것을 이용한 것이다. 

 

브라우저와 도메인이 같은 서버를 만든 후, 브라우저에는 API 서버 대신 프록시 서버에 요청을 보낸다. 

프록시 서버가 API 서버로부터 응답을 받아 브라우저로 전달해준다. 

http-proxy-middleware 라는 npm 패키지를 사용하면 되겠다.