[javascript] Express.js에서의 CORS 처리 방법
Cross-Origin Resource Sharing (CORS)는 웹 애플리케이션에서 자원 공유를 허용하기 위한 메커니즘입니다. Express.js에서 CORS를 처리하는 방법에 대해 알아보겠습니다.
Express.js에서 CORS 미들웨어 사용하기
Express.js에서 CORS를 처리하기 위해서는 cors
미들웨어를 사용해야 합니다. cors
는 Express.js 애플리케이션에 CORS를 적용하는 데 필요한 다양한 설정 옵션을 제공합니다.
먼저, cors
미들웨어를 설치합니다.
$ npm install cors
설치가 완료되면, Express.js 애플리케이션의 미들웨어로 cors
를 사용하도록 설정합니다.
const express = require('express');
const cors = require('cors');
const app = express();
// 모든 경로에 대해 CORS를 허용합니다.
app.use(cors());
// ... 라우팅 및 기타 미들웨어 설정 ...
// 서버 시작
app.listen(3000, () => {
console.log('서버가 3000번 포트에서 실행 중입니다.');
});
위 코드에서 app.use(cors())
를 사용하여 모든 경로에 대해 CORS를 허용하도록 설정하였습니다. 이렇게하면 다른 도메인에서 오는 요청도 처리할 수 있습니다.
CORS 설정 옵션
cors
미들웨어는 다양한 옵션을 통해 CORS를 사용자 지정할 수 있습니다. 다음은 일부 주요 옵션입니다.
origin
: 허용할 도메인을 지정합니다. 기본값은*
로 모든 도메인을 허용합니다.methods
: 허용할 HTTP 메소드를 지정합니다. 기본값은 [‘GET’, ‘HEAD’, ‘PUT’, ‘PATCH’, ‘POST’, ‘DELETE’] 입니다.allowedHeaders
: 허용할 헤더를 지정합니다. 기본값은 모든 헤더를 허용합니다.exposedHeaders
: 브라우저에 노출할 헤더를 지정합니다.
예를 들어, 특정 도메인(https://example.com)만 허용하고 GET 및 POST 메소드만 허용하려면 다음과 같이 설정할 수 있습니다.
app.use(cors({
origin: 'https://example.com',
methods: ['GET', 'POST']
}));
결론
Express.js에서 CORS를 처리하기 위해 cors
미들웨어를 사용하는 방법을 살펴보았습니다. cors
미들웨어를 사용하면 간편하게 Express.js 애플리케이션에 CORS를 적용할 수 있습니다. 다양한 옵션을 사용하여 필요에 맞게 설정할 수 있습니다.
더 자세한 내용은 공식 문서를 참조하세요.