Node는 Server application을 실행하는데 제일 많이 사용하기에 서버가 무엇인지 알아야 합니다.
Server는 Network를 통해 client에 정보나 서비스를 제공하는 컴퓨터나 프로그램을 말합니다.
내 PC → 브라우저 : 웹 사이트 접속 요청
브라우저 → 내 PC : 웹 사이트 주소에 해당하는 위치 파악 후 정보(page)를 받아온다. (응답)
App Store → Apple server : 앱 설치 요청
Apple server → App store : 앱 다운로드(응답)
그렇다면 서버 입장에서 누가 요청을 보냈는지 어떻게 알 수 있을까요? 정답은 "쿠키"를 통해서 입니다.
서버는 요청에 대한 응답을 할 때 '키=값' 으로 이루어진 쿠키를 함께 보냅니다. 응답을 받은 클라이언트는 쿠키를 저장해두었다가, 요청할 때마다 서버와 마찬가지로 쿠키를 함께 보냅니다. 서버는 다시 이 쿠키를 받아 누가 요청을 보냈는지 알 수 있게 됩니다.
서버는 클라이언트가 보낸 요청에 대한 응답으로 상태 코드(status code)를 보냅니다. 이를 통해 클라이언트는 요청이 성공했는지 실패했는지 확인할 수 있습니다.
서버의 자원을 정의하고 HTTP URL를 통해 자원에 대한 주소를 지정하는 방법을 말합니다. 또한 HTTP 요청 Method를 통해 자원에 대한 CRUD를 표현할 수 있습니다.
HTTP 요청 method