http 모듈을 사용하여 웹서버를 간단하게 구축해보자.
server.js 파일을 만들고, 다음을 입력, 저장, 실행한다.
// 1. 서버 사용을 위해서 http 모듈을 변수에 담는다.
var hp = require('http');
// 2. http 모듈로 서버를 생성한다.
// 아래와 같이 작성하면 서버를 생성한 후, 사용자로 부터 http 요청이 들어오면 function 블럭내부의 코드를 실행해서 응답한다.
var server = hp.createServer(function(request,response){
response.writeHead(200,{'Content-Type':'text/html; charset=utf-8'});
response.end('Hello, Node.js!');
});
// 3. listen 함수로 8080 포트를 가진 서버를 실행한다.
server.listen(8080, function(){
console.log('Server is running...');
console.log('<http://localhost:8080>');
});
http://localhost:8080로 접속해본다.
http : http 모듈(hp는 생성한 객체)
createServer : 모듈을 이용해 서버를 생성하는 메소드
listen : 서버를 실행하는 메소드. 매개변수로 포트번호를 받는다.
request : 사용자→서버로 요청한 내용을 담음
response : 서버→사용자로 반환한 내용을 담음
⇒response 객체의 writeHead 메소드: 응답헤더에 정보를 전달함으로써 브라우저가 인식할 수 있게 해줌. 200(서버 응답 코드): 정상적으로 서버 요청이 처리되었음을 의미한다.