코드 5-3 파라미터를 얻어 오는 기능 추가
예제 파일 : monolithic.js
const http = require('http'); const url = require('url'); const querystring = require('querystring'); var server = http.createServer((req, res) => { var method = req.method; var uri = url.parse(req.url, true); var pathname = uri.pathname; if (method === "POST" / | method === "PUT") { // ➊ POST와 PUT이면 데이터를 읽음 var body = ""; req.on('data', function(data) { body += data; }); req.on('end', function() { var params; // ➋ 헤더 정보가 json이면 처리 if (req.headers['content-type'] == "application/json") { params = JSON.parse(body); } else { params = querystring.parse(body); } onRequest(res, method, pathname, params); }); } else { // ➌ GET과 DELETE이면 query 정보를 읽음 onRequest(res, method, pathname, uri.query); } }).listen(8000); function onRequest(res, method, pathname, params) { res.end("response!"); // ➍ 모든 요청에 "response!" 메시지를 보냄 }