오늘 한 일
express.js
사용하여 API Server 구현하기
오늘 배운 것
req.query
: /?query
req.params
: /:params
res.json()
는 받은 인자를 json 문자열로 변환해서 헤드에 'Content-Type', 'application/json' 로 셋팅해주고 body인자에 저장해서 내부적으로 res.send()
를 호출해서 body를 인자로 넘겨준다.
res.json()
/ res.send()
둘 다 헤더를 application/json 으로 설정해주며 JSON 데이터의 형식에 대해 따로 자세히 지정해줄 필요가 없는 일반적인 환경에서 res.send()
와 res.json()
의 차이는 없는 것과 같으며 둘 다 똑같이 전송 후 응답을 종료해주기 때문에 따로 구분해서 명시해줄 필요 없다.
res.send(
)를 쓰던 res.json()
를 쓰던 사용자의 취향에 따라서 쓰되 하나로 통일해서 사용해주는게 좋다.
- 미들웨어에서
next()
를 호출하지 않는다면 파이프라인이 그 미들웨어에서 종료되고 그 이후의 라우트 핸들러와 미들웨어가 호출되지 않는다.
따라서 next()
를 호출하지 않는다면 클라이언트에게 어떤 응답이라도 보내줘야 한다. 응답마저 보내지 않게 되면 클라이언트는 멈춰있다가 타임아웃에 걸린다.
내일 할 일
- 모르거나 이해안되는 부분 찾아보고 해결 안되면 질문하기