Page 18 -
P. 18
if (err) {
throw err;
}
res.end(data);
}); 4
}).listen(8081, () => {
console.log('8081번 포트에서 서버 대기 중입니다!');
}); http 모듈로 웹 서버 만들기
요청이 들어오면 먼저 fs 모듈로 HTML 파일을 읽습니다. data 변수에 저장된 버퍼를 그대로 클
라이언트에 보내주면 됩니다. 이전 예제에서는 문자열을 보냈지만, 저렇게 버퍼를 보낼 수도 있습
니다.
포트 번호를 8081번으로 바꿔주었습니다. server1.js를 종료했다면 8080번 포트를 계속 사용해
도 됩니다. 하지만 종료하지 않았을 경우 server2.js가 같은 8080번 포트를 사용하면 에러가 발
생하므로 8081번으로 바꾸었습니다. 이렇게 포트만 다르게 해서 동시에 여러 노드 서버를 실행할
수도 있습니다.
콘솔
$ node server2
8081번 포트에서 서버 대기 중입니다!
그림 4-5 서버 실행 화면
HTML 파일을 읽어와 클라이언트로 전송하는 데 성공했습니다. 하지만 현재 서버는 클라이언트
가 누구인지 모릅니다. 그냥 요청이 올 때 모두에게 같은 응답을 보내고 있습니다. 다음 절에서는
서버가 클라이언트가 누구인지 기억해서 클라이언트별로 다르게 응답하는 방법을 알아봅시다.
137
node_06.indd 137 2018-07-20 오전 10:26:43