본문 바로가기
개발 이야기/NodeJS

NodeJS 시작하기

by 농개 2018. 6. 23.
반응형

Node의 특징

구글의 V8 자바스크립트 인터프리터(C++로 작성됨)를 기반으로 한다.

비동기 I/O(특별한 동기화 메서드도 있긴하다)

파일, 네트워크 소켓 등의 저수준 유닉스 API, Http에 대한 바인딩한다.

API가 비동기적이기 때문에 이벤트핸들러로 API를 처리한다.


위의 내용 외에 많은 특징들이 있지만, 워낙 방대하기에 http://nodejs.org 들어가보는걸 추천


Node설치

먼저 설치 파일을 다운받아야 한다. https://nodejs.org/en/ 여기 들어가면 


위와 같은 화면이 나오고 설치 파일을 다운 받을 수 있다. 현재 10.버젼 까지 나왔나보다..꾸준히 개발되고 있구만...


Node로 간단한 HTTP 서버 만들어보기

원하는 디렉토리에서 server.js파일을 만들고 아래와 같이 코딩하였다.


1
2
3
4
5
6
7
8
9
10
11
12
var http = require('http');
 
var server = new http.Server();
server.listen(8000);
 
server.on("request"function(request,response){
  
  response.writeHead(200, {"Content-Type":"text/plain; charset=UTF-8"});
  response.write("HelloWorld");
  response.end();
})
 
cs


require는 지정된 모듈을 불러와서, 단 한번만 실행을 하게되고, export된 객체를 반환한다.

즉, 위의 http서버의 경우 http모듈을 불러오고 http API를 반환

이후, http서버를 생성하고, 8000번 포트에서 실행 시켰다.


그리고 노드는 이벤트 핸들러를 등록하기 위해 on메서드를 사용한다. 

위의 경우 서버에서 요청을 받으면 on메서드의 callback함수. 즉, function(){...}를 실행하게 된다.


코드를 저장한 후, 해당 디렉토리에서 cmd창을 열고 node server.js 로 실행시켜보자

그리고 브라우저를 열어서 localhost:8000/ 로 접속해보면

위처럼 나오는걸 확인 할수 있다.

반응형