본문 바로가기
Programming/Node.js

Node.js + Express 사용해서 서버 사용하는 방법

by 혀코 2019. 12. 19.

안녕하세요. 혀코입니다.

오늘은 Node.js와 Express를 사용해서 서버 사용하는 방법에 대해 알아보겠습니다.

우선 Node.js를 설치합니다.

https://nodejs.org

 

Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

Node 설치 후에 서버로 사용할 폴더 하나를 만들고 다음 명령어를 사용해서 server.js 파일을 만듭니다.

$ touch server.js

server.js 파일을 만든 다음, 아래의 명령어를 사용해서 node package module을 초기화 하고, package.json 파일을 만듭니다.

$ npm init

package name: (server)
version: (1.0.0)
description: server
entry point: (server.js)
test command: 
git repository:
keywords:
author: hyukho
license: (ISC)

{
  "name": "server",
  "version": "1.0.0",
  "description": "server",
  "main": "server.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node server.js"
  },
  "author": "hyukho",
  "license": "ISC"
}

 

다음으로, Express 를 설치합니다.

https://expressjs.com

 

Express - Node.js web application framework

Fast, unopinionated, minimalist web framework for Node.js $ npm install express --save

expressjs.com

아래의 명령어를 사용하면 Express를 설치할 수 있습니다.

$ npm install express

Express를 설치한 후, packages.json 파일을 확인해보면, 다음과 같이 Express가 추가된 것을 확인할 수 있습니다.

{
  "name": "server",
  "version": "1.0.0",
  "description": "server",
  "main": "server.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node server.js"
  },
  "author": "hyukho",
  "license": "ISC",
  "dependencies": {
    "express": "^4.17.1"
  }
}

다음으로 server.js를 아래와 같이 수정합니다.

//jshint esversion:6

const express = require("express");

const app = express();

app.listen(3000, function(){
    console.log("I love you 3000");
});

위 코드는 localhost 포트 3000으로 서버를 실행하게 됩니다. 포트를 3000으로 지정해서 아이언 맨에 나왔던 대사를 사용해 봤습니다. :)

그리고 다음 명령어를 실행하면 결과로 "I love you 3000"이 표시됩니다.

$ node server.js
I love you 3000

이렇게 서버를 시작하고 웹브라우저에 http://localhost:3000/를 입력하면 'Cannot GET /'이라고 표시가 됩니다.

홈 "/"에 아무것도 없어서 뜨는 오류입니다.

Ctrl + c 를 눌러서 서버를 종료하고, server.js를 아래와 같이 업데이트 합니다.

//jshint esversion:6

const express = require("express");

const app = express();

app.get("/", function(request, response){
    response.send("I am Iron Man");
});

app.listen(3000, function(){
    console.log("I love you 3000");
});

server.js를 업데이트하고 다음 명령어를 사용해서 서버를 시작합니다.

$ node server.js

그런다음 웹브라우저에서 http://localhost:3000/를 입력하면 'I am Iron Man'이 표시되는 것을 확인할 수 있습니다.

그리고 다음과 같이 HTML태그를 response로 보내게 되면 h1 태그에 맞게 폰트사이즈가 커지는 것을 확인할 수 있습니다.

//jshint esversion:6

const express = require("express");

const app = express();

app.get("/", function(request, response){
    response.send("<h1>I am Iron Man</h1>");
});

app.listen(3000, function(){
    console.log("I love you 3000");
});

 

위 코드는 아래와 같이 작성해도 정상적으로 작동합니다.

const express = require("express")

const app = express()

app.get('', (req, res) => {
    res.send('<h1>I am Iron Man</h1>')
});

app.listen(3000, () => {
    console.log('I love you 3000.')
});

 

Node.js에서 세미콜론은 안써도 되어서 생략하고, 일반 함수 대신에 Arrow 함수를 사용해서 작성했습니다.

 

 

이렇게 Node.js와 Express를 사용해서 서버를 사용하는 방법에 대해서 알아보았습니다. 

유용하셨다면 공감과 구독버튼 눌러주세요. 저에게 큰 힘이 됩니다.

감사합니다. :)

댓글