nodejs.org 접속 후 download 탭에서 LTS 버전 설치
cmd창에
node --version
명령어 입력 시 설치된 node.js의 버전을 확인할 수 있다.
Node.js를 활용하여 가장 기본적인 웹 서버를 실행해보자.
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type' : 'text/plain'});
res.end('Hello World!\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337');
위의 코드를 입력한 후 hello.js 이름으로 파일을 저장한다.
cmd에서 해당 파일이 저장되어 있는 위치로 이동한 후 node hello.js
를 입력한다.
console.log('Server running at http://127.0.0.1:1337');
해당 코드에 따라 콘솔에는 Server running at http://127.0.0.1:1337
문구가 출력된다.
서버 실행 결과를 확인하기 위해 웹 브라우저에 http://127.0.0.1:1337
을 입력한다.
웹 브라우저에 Hello World!
문구가 출력되며 웹 서버가 정상적으로 실행된 것을 확인할 수 있다.
var http = require('http');
http 모듈을 가져온다.
http.createServer()
http 서버 인스턴스를 생성한다.
listen()
이 함수를 통해 http 서버를 시작할 수 있다.
서버 인스턴스를 생성한 후 서버를 시작했지만, 사용자의 요청을 처리하는 부분이 존재하지 않아서 서버를 실행했지만 아무일도 일어나지 않는다. 따라서 사용자의 요청을 처리하는 콜백함수를 정의한다.
콜백 함수 : 다른 함수의 인자로 들어간느 함수. 특정 시점 또는 이벤트가 발생했을 때 시스템에서 호출하는 함수이다.
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type' : 'text/plain'});
res.end('Hello World!\n');
})
콜백함수로 익명함수를 정의하고 사용자의 요청(http request)이 들어올 때마다 이를 처리한다. 이를 통해 웹 브라우저에 "Hello World!"를 출력하게 된다.
listen(1337, '127.0.0.1');
포트번호는 1337, IP는 127.0.0.1(localhost)
127.0.0.1 대신 localhost를 입력해도 서버가 정상적으로 실행되는 것을 확인할 수 있다.