211104 TIL

CoderS·2021년 11월 4일
0

TIL DAY 91

오늘 배운 일

✔️ Node.js 백엔드 개발

  • 새로운 정보 추가하기

    예 )

    파일에다가 새롭게 app 객체에 use라는 메소드를 호출하고, 그 안에 express 객체에 json이라는 메소드를 리턴하도록 써 봤다.

express 객체에 json이라는 메소드는 어떠한 함수를 리턴한다.

그 함수는 서버에서 온 request의 바디에 json데이터가 존재할 경우에, 그것을 추출해서 request의 바디에 바디 프로퍼티 값으로 설정해준다.

request가 router handle에 의해 처리되기전에, 추가적으로 필요한 함수를 express에서는 middleware라고 부른다.

request가 들어오면, 설정한 middleware을 의해서 바디에 있는 json 데이터가 request객체에 바디 프로퍼티에 설정되고, 그리고 request의 path를 보고 알맞은 router handler가 호출된다.

궁극적으로, middleware는 서버에 오는 모든 request의 관해 필요한 처리를 해주는 함수이다. use메소드를 이용해서 설정이 가능하다.

그리고 터미널에서 node app.js를 실행해주고...

test.http 파일에서 POST request 데이터를 보내주면...

request 바디에 담은 내용이 잘 출력이됐다.

새로운 정보를 추가하는 코드를 작성해본다...

지금보면은 request 바디가 가리키는 객체를 newMember라는 이름으로 받았고, newMember를 기존 직원 정보 배열에 추가시킨다. 그리고 추가한 정보를 response에 담아서 보내준다.

POST request를 사용해서 정보를 추가하고...

GET request를 사용해서 확인을하면...

내가 만들 코드가 추가되서 출력이잘됐다.

다시 복습하자면...

라우트 핸들러란?

  • 특정 path를 대상으로 한, 특정 메소드를 가진 리퀘스트를 처리해주는 함수를 의미한다.

    새롭게 알아야할 점!

출처 : 코드잇

req, res, next라는 3개의 파라미터가 보이는데, 미들웨어에 해당하는 함수는 보통 이렇게 3개의 파라미터를 받는다.

기능적으로는 라우트 핸들러 이전에 request에 관한 처리를 해주는 함수이다.

이 파라미터들로 넘어오는 객체들을 활용해서 미들웨어는 request에 관한 처리를 수행하고 request를 그 다음 미들웨어나 그 다음 핸들러로 넘겨준다.

끝으로 :

  • 오늘은 특정 정보를 추가해주는 방법과 복습차원으로 라우터 핸들러에 대해 배우는 시간을 가졌습니다.
  • 노드를 배우면 배울수록, 외울것도 많고 알야할 게 많아서 머리가 아프다.
profile
하루를 의미있게 살자!

0개의 댓글