출처 : http://dustywind.cafe24.com/board_uQaJ46/1175


1. 시작

node-1.png

-------------------------------------------------------------------------------------------------------

node-2.png

 

1) 먼저 Editplus 등을 이용해 demo.js 를 만든다.

  var http = require('http');  --- http 모듈을 가져옴
  var server = http.createServer(function(req, res){  

                 -- http.createServer()를 호출해 이 모듈로부터 server 객체를 생성한다.

     res.end('Hello World'); --- response.end()함수,

                                       버퍼를 인자로 받아 요청종료직전 응답에 사용
  });
  server.listen(3000);  --- 서버를 TCP 3000번 포트에 지정(바인딩) 

 

2) www.nodejs.org 에서 다운 후 설치

1.PNG

 

3) 실행 > cmd > 창을 열어서 demo.js가 깔려있는 폴더로 이동 (나는 c:\에 저장했음)

 여기에 node demo.js 를 타이핑한다. 그러면 커서만 깜빡거리는데.... 이로서 서버를 생성했고 현재

서버가 열러서 인풋을 기다리고 있는 상태이다.

3.PNG

 

 

3) 브라우저를 하나 열어서

  http://localhost:3000/ 타이핑

 

 

[결과화면] Hello World! 등장이요.ㅎㅎ

 

2.PNG

 

2. express 설치

1) 설치

cmd로 명령프롬프트로 이동하고

npm install -g express-generator   

을 타이핑한다. (express.js는 HTTP방식및 URL을 기반으로 행동을 수행하게 함)

2.PNG

설치 끝

* 참고 : npm(node pakage manager)

- npm은 세가지 기능을 한다.

 i)패키지의 저장소 역할    ii)패키지를 관리하는 수단    iii)다른 패키지의 의존성을 정의하는 표준

node는 저수준의 API만을 포함하고 있으므로 필요한 기능을 그때그때 npm으로 내려받고 사용할 수 있게 해준다.

위에서 -g 플래그는 전역모드로 사용함을 명시할 때 사용한다.

 

2) 프로젝트 생성및 dependencies 설치

아래의 순서대로 타이핑하자.

express example01 : example01이라는 프로젝트 폴더를 생성하고 express 프로젝트를 만든다.

cd example01 : example01 폴더로 이동

npm install : express에 종속적으로 필요한 모듈들을 다운로드 받는다. 이 모듈목록은 package.json파일에 적혀있다.

 

(1) express example01

3.PNG

위는 express.js가 새로운 프로젝트 폴더를 생성할 때 자동생성되는 폴더와 파일들이다.

 

(2) npm install

4.PNG

.... 이미지 중간부분 생략 

5.PNG

 

(3) tree

tree(리눅스에선 ls -l)을 타이핑하면 생성된 폴더를 볼 수 있다.

3.PNG

 

3) 실행및 웹 접속 테스트

node.\bin\www (또는 npm install 타이핑 > node bin/www 엔터)

또는 npm start 타이핑

5.PNG

접속 확인을 위해 브라우저 주소창에 http://localhost:3000 

6.PNG

접속 성공.  Ctrl + C 키를 누르면 빠져나온다.

 

[분석]

이제 내 컴퓨터를 확인해보자

i) (먼저 .node_repl_history라는 파일이 생겼다.)

ii) C:\Users\Administrator.MSDN-SPECIAL 폴더에 example01이라는 폴더가 생성되었다.

7.PNG

 

4) 폴더 분석

editplus로 package.json파일을 열어보자.

7.PNG

6 line : start를 입력하면 node./bin/www가 열리는 이유

 

C:\Users\Administrator.MSDN-SPECIAL\example01\bin로 이동하여 마찬가지로 www를 열어보면

8.PNG

www는 실행명령을 통해 실행되는 최초의 진입점이다.

7, 9 line : app과 http를 수행하겠다

15 line : 3000번 port에 http 서버를 만들어

16 line : 이를 app 모듈에 연결시킨다.

 

C:\Users\Administrator.MSDN-SPECIAL\example01\routes으로 옮겨 index.js를 열어보면

1.PNG

6 line : res.render 함수를 통해서 index.jade 파일로 랜더링한다.

         이 때 {title:'Express'}라는 객체 하나를 던진다.

 

이제 C:\Users\Administrator.MSDN-SPECIAL\example01에서 app.js를 열어보자

9.PNG

.url을 매핑하는 부분이다.

 

C:\Users\Administrator.MSDN-SPECIAL\example01\views로 옮겨 index.jade를 열자

2.PNG

이것이 index.js에서 랜더링하는 템플릿파일이다. 이 파일이 html로 변환된다.