CORS [ TIL ] [ node.js ]

2023. 7. 16. 13:51TIL&WIL/TIL

 

Problem

 

배포를 완료하고 프론트에 데이터를 주었는데 프론트에서 CORS 오류가 발견됨


Try

 

npm i cors
// app.js

// ...
const cors = require("cors");

// ...

let corsOptions = {
  origin: "*",
  credential: true,
};

// ...

 


Solve

 

옵션에 origin 을 여러번 바꿔보았으나 프론트에 문제가 계속되었고, 위의 코드로 변경 후,

프론트에서 CORS 관련된 코드를 모두 제거하니 해결 되었다.

 


What I Learned

 

CORS 에 대해 배웠다.

CORS 는 브라우저에서 보안적인 이유로 cross-origin HTTP 요청들을 제한한다. 그래서 요청을 하려면 서버의 동의가 필요한데

동의를 하지 않는다면 브라우저에서 거절한다.

즉 브라우저에서 cross-origin 요청을 안전하게 할 수 있도록 하는 것이다.

 

그래서 cross-origin 은 다음중 한가지라도 다른 경우이다. 프로토콜, 도메인, 포트번호

 

CORS 이 왜필요하냐면 모든곳에서 데이터 요청을 할 수 있게 되면 다른 사이트에서 원래 사이트를 흉내낼 수 있게됩니다. 흉내내서 사용자가 로그인하게 만들고, 세션을 탈취해 정보를 뺏을 수 있다.

 

이렇게 CORS 에 대해 알게되었고, 왜 사용되는지 알 수 있었다.

'TIL&WIL > TIL' 카테고리의 다른 글

클론 프로젝트 주차 회고 [ TIL ]  (0) 2023.07.27
미들웨어 [ TIL ] [ express ]  (0) 2023.07.16
테스트코드 [ TIL ]  (0) 2023.07.12
SQL vs NoSQL [ TIL ]  (0) 2023.07.09
ORM [ TIL ]  (0) 2023.07.09