POST와 PUT일 경우 req의 data와 end 이벤트를 이용해 파라미터를 얻어 옵니다(➊). 이때 헤더 정보가 JSON이면 JSON 포맷에 맞게 파싱하고, 그렇지 않으면 키-값 형식으로 파싱해 params 변수에 담습니다(➋). GET과 DELETE이면 url 모듈을 이용해 파싱한 결과의 query 정보를 params에 담습니다(➌).
Note ≣
REST에서 GET과 DELETE 메서드에 파라미터를 전달하는 두 가지 방법이 있습니다. 하나는 URI에 파라미터를 포함해 전달하는 방법이고, 다른 하나는 URI 뒤에 쿼리 형태로 전달하는 방법입니다.
사용자 A 정보를 조회할 경우
• 타입 1 : http://host:port/users/A
• 타입 2 : http://host:port/users?username=A
책에서는 URI와 파라미터를 쉽게 구분하려고 두 번째 타입으로 진행합니다.
획득한 정보를 파라미터로 갖는 onRequest 함수를 만들어 모든 메서드의 호출을 한곳에서 처리하도록 했습니다. 이때 임시로 “response!” 메시지가 응답하게 합니다(➍).