Proxy
본문 바로가기
더 알아보기/기능

Proxy

by 은돌1113 2021. 12. 15.

Proxy란?

: 유저가 인터넷에 요청을 보낼 때 직접 보내는 것이 아니라 Proxy 서버를 거쳐 최종 목적지에 전달하게 한다.

이때 Proxy 서버를 거치면서 유저의 IP를 바꿀 수 있다.

즉, 유저의 실제 IP와 포트를 알 수 없도록 하는 것이 Proxy 서버의 역할이다.

 

React 프로젝트에서 Proxy로 CORS 해결하기 (Local)

: CORS는 위에서 설명한 것처럼 처음 리소스를 요청한 주소와 다를 때 발생한다.

그렇다면 Proxy 서버를 거쳐서 처음 리소르를 요청한 주소와 동일하게 한다면 오류는 사라지지 않을까??

 

터미널에 Proxy 미들웨어 패키지를 설치한다.

npm install http-proxy-middleware

 

클라이언트와 서버에 포트를 같게 하기 위하여 위처럼 코드를 작성한다.

위 코드는 /api라는 주소로 요청을 보낼 땐 localhost:5000으로 바꿔 요청을 보낸다는 것이다.

결과적으로 클라이언트와 서버는 완전히 같은 리소스이기 때문에 CORS가 발생하지 않는다.

 

이 글의 출처의 작성자의 클라이언트는 3000 포트이고, 서버는 5000 포트였다.

Proxy를 거치면 5000 포드로 보내게 된다.

 

(출처)
https://tried.tistory.com/76

 

Cors란 무엇인가?

CORS(Cross-Origin Resource Sharing)는 교차 출처 리소스 공유라는 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제이다. 즉, 무분

tried.tistory.com

 

React에서 사용하는 방법

https://ljh86029926.gitbook.io/coding-apple-react/undefined-1/cra

 

CRA 프록시 서버 설정하는 방법 - React

또한 개발 서버는 불안정하기 때문에 언제든지 URL이 바뀔 가능성이 다분한데, 그 때마다 하나하나 수정을 하기에는 매우 불편합니다. 하지만 proxy를 사용한다면 proxy가 사용된 package.json만 변경

ljh86029926.gitbook.io

 

'더 알아보기 > 기능' 카테고리의 다른 글

PWA  (0) 2021.12.21
Timer 기능  (0) 2021.12.20
Prettier 세팅하기  (0) 2021.12.13
할 일 목록 띄워주는 사이트  (0) 2021.10.28
새봄이 궁디팡팡 해주는 미니게임  (0) 2021.10.28

댓글