티스토리 뷰

Node.js 실무기초 원격 강좌

CORS (Cross-origin resource sharing, 교차 출처 리소스 공유)

  • 현재 브라우저로 접속중인 페이지에서 자바스크립트를 이용해 다른 도메인 또는 포트를 가진 주소로 요청을 하는 경우, 해당 리소스에 접근을 허용했는지 확인(OPTIONS 메서드를 이용한 요청을 의도적으로 허용하고 있는게 맞는지 확인: CORS preflight)해 보안을 높이는 동작
  • 해결1: 서버에 Access-Control-Allow-Origin 응답 헤더를 추가
  • 해결2: cors 모듈 사용

1) cors 모듈 설치

npm install cors

2) app.js에 코드 추가

const cors = require("cors");
app.use(cors());

3) 서버 재시작

 

4) 문제 해결 확인: test-cors.org 에서 쉽게 가능

 

실습: 스파르타 쇼핑몰

기억할만한 이슈

/goods/cart url에 get  요청시 오류 발생

-> 해결: /goods/:goodsId router와의 위치가 중요했음. /goods/cart 라우터가 더 위에 위치해야함.

 

 프론트엔드 연결하기

app.js에 코드 추가 & 프로젝트 폴더에 static 디렉토리 추가

app.use(express.static('static'));

 

개발자의 마음가짐

1. 몇 시간이 걸리든 하나의 코드를 작성하더라도 어떤 코드를 작성하고 있는지 제대로 알아야만 더 좋은 코드를 작성할 수 있다. 
- KISS(Keep it simple, stupid)
- YAGN(You Ain’t Gonna Need it)
- DRY(Don’t Repeat Yourself)
2. 새로운 도구를 사용하는건 언제나 설레고 좋겠지만 정말 도움을 줄 수 있는 도구인지, 아닌지 꼼꼼하게 확인해본 뒤 사용한다.
3. 장인은 도구를 가리지 않는다. 끊임 없는 공부와 노력을 하다 보면 도구를 가리지 않고도 언제나 좋은 결과를 낼 수 있을 것이다.
4. 자신의 코드를 다시 되돌아보면서 논리적으로 맞게 작성한건지 아닌지, 불필요한 코드가 생겨나진 않았는지, 코드가 술술 잘 읽히는지 확인한다.
5. 백엔드 개발자라 해도 프론트엔드에 전혀 관심이 없으면 안된다.
6. ”만약” 을 대비하거나 아직 가지고 있지 않은 문제까지 예상하여 해결하지 않도록 한다. (Over Engineering)

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함