학습

express 미들웨어 CORS - configuration options

용사지둥 2021. 10. 21. 18:53

origin

  • CORS header의 Access-Control-Allow-Origin에 해당한다.(요청을 보낼 권한이 있는 도메인을 설정)

methods

  • CORS header의 Access-Control-Allow-Methods에 해당한다.(어떤 요청방식을 허용할 것인지 설정)
    • 'String'(ex: 'GET, PUT, POST')과 'Array'(ex: ['GET', 'PUT', 'POST', 'OPTION'])등으로 사용

credentials

  • CORS header의 Access-Control-Allow-Credentials에 해당한다.(자격 증명 정보가 담긴 요청을 받을 것인지 설정)
    • 'true'는 자격 증명이 담긴 요청을 허용, 그렇지 않다면 생략

express 미들웨어 CORS - Configuration Options

axios를 사용하여 자격 증명 정보를 함께 전송하려면 다음과 같이 withCredentials: true 옵션을 추가하면 된다.

axios("http://example.com", {
  withCredentials: true
});

자격 증명이 함께 전송되는 요청을 보낼 땐 Access-Control-Allow-Origin*을 쓸 수 없습니다. 이런 제약이 있어야 어떤 오리진에서 요청이 왔는지에 대한 정보를 서버가 신뢰할 수 있기 때문입니다.