본문 바로가기

Web Development/Node.js

Node.js/Express 튜토리얼

728x90

 

1. node.js 설치

설치 후, 터미널에서 아래 명령어를 입력해 node.js와 npm의 설치 버전 확인

* npm(node package manager)은 node.js 내부의 패키지 관리자로, node.js 설치 시 자동으로 같이 다운됨

node -v

 

npm -v

 

2. js 파일 실행 방법

node <파일명>

 

node test.js

 

3. 오픈소스 모듈 설치방법

npm install <패키지>

* 패키지 다운 전에 npmjs.com에서 패키지의 안정성을 검토하고 적용

npm install nodemailer

* 설치되는 모듈은 node_modules 폴더에 들어오게 됨

* package-lock.json 파일에는 설치된 모듈 정보가 json 파일 형식으로 정리되어 있음

 

4. 설치한 모듈 불러오기

require('<설치한 모듈명>')

 

const nodemailer = require('nodemailer')

 

5. express로 웹 서버 만들기

npm install express --save
const express = require('express');
const app = express();

const server = app.listen(3000, ()=> {
    console.log('Start Server : localhost:3000');
})

 

6. html 파일 렌더링하기

npm install ejs --save
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs'); // ejs는 html 파일에서 javascript를 같이 쓸 수 있게 해주는 기능
app.engine('html', require('ejs').renderFile)

app.get('/', function (req, res) {
    res.render('index.html')
})

 

7. DB연결하기

npm install mysql --save
var mysql      = require('mysql');
var pool  = mysql.createPool({
    connectionLimit : 10,
    host            : '',
    user            : '',
    password        : '',
    database        : ''
  });
 

app.get('/db', function(req, res) {
    pool.getConnection(function(err, connection) {
        if (err) throw err; // not connected!
       
        // Use the connection
        connection.query('SELECT * FROM `TABLE` ', function (error, results, fields) {
            res.send(JSON.stringify(results));
            console.log(results);
            
          // When done with the connection, release it.
          connection.release();
       
          // Handle error after the release.
          if (error) throw error;
       
          // Don't use the connection here, it has been returned to the pool.
        });
      });

})

 

 

8. 패키지 시작

npm init

- package name : 패키지 이름

- version

- description

- entry point : 메인 js 파일

- test command : test를 동작할 명령어

- git repository : 깃 주소

- keywords : 패키지를 공유했을 때, 사용자들이 검색 가능하도록 하는 키워드

- author : 저작권자

- license : 저작권

 

* 작성한 내용은 package.js 파일로 저장됨

 

9. 자신만의 module 만들기

- module 내보내기

module.exports = <함수 이름>;
module.exports = {
	<내보내고 싶은 함수명>,
    	<내보내고 싶은 변수명>
}

- module 불러오기

require('<함수 이름>')

* .js 까지 입력하지 않아도 인식 가능

 

 

 

Reference

https://www.youtube.com/watch?v=toLDNN4FQv0&t=119s 

 

반응형