CS 공부
CORS 란 ?
NiceKHJ
2025. 6. 9. 15:37
CORS (Cross-Origin Resource Sharing) 는 브라우저가 보안을 위해 다른 출처의 요청을 막는 기능 이다.
서버가 허락한 경우에는 요청을 허용해준다.
다른 출처란?
출처는 프로토콜 + 도메인 + 포트번호 로 구성된다.
예를 들어
http://localhost:3000 [ 프론트 ]
http://localhost:5000 [ 백엔드 ]
포트가 다르기 때문에 출처가 다르다 - CORS 발생
CORS 에러는 왜 생길까?
- 브라우저는 다른 출처로 요청할 때 보안상의 이유로 막는다.
- 이때 서버가 "이 프론트 주소는 허용" 라고 응답해야 요청이 정상적으로 처리된다.
해결 방법 (서버에서)
Node.js(Express)에서의 설정
const cors = require('cors');
app.use(cors({
origin: 'http://localhost:3000', // 허용할 프론트 주소
methods: ['GET','POST','PATCH'], // 허용할 HTTP 메서드
credentials: true // 쿠키 등 자격 정보 허용 여부
}));