Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

사고쳤어요

Node.js 서버 모듈화 본문

웹 풀스택

Node.js 서버 모듈화

kevinmj12 2025. 2. 4. 14:21
// server.js

let http = require("http");

function onRequest(request, response) {
  response.writeHead(200, { "Content-Type": "text/html" });
  response.write("Hello Node.js");
  response.end();
}

http.createServer(onRequest).listen(8888);

 

위와 같이 작성되어있는 server.js가 있을 때 이를 모듈화하여 다른 파일에서 사용하여보자.

 

// index.js

let server = require("./server");

 

아주 간단하게 한 줄만으로 가능하다.

index.js를 server.js가 있는 같은 공간에 만든 후, require("./server") 를 통해 index.js에서 server.js를 호출할 수 있다.

이제 명령창에서 node server.js가 아닌, node index.js로도 server.js를 호출할 수 있다.

 

하지만 위와 같이 되어있다면 내가 원할 때 서버를 실행할 수 없다.

index.js에서 start()와 같은 함수를 통해 내가 원할 때 서버를 실행할 수 있도록 고쳐보자.

 

// server.js

let http = require("http");

function start() {
  function onRequest(request, response) {
    response.writeHead(200, { "Content-Type": "text/html" });
    response.write("Hello Node.js");
    response.end();
  }

  http.createServer(onRequest).listen(8888);
}

exports.start = start;

 

기존 server.js 코드를 start() 함수로 감싸주었다.

그리고 start()함수를 다른 파일에서도 사용할 수 있도록 exports.start = start 를 추가하였다.

// index.js

let server = require("./server");

server.start();

 

이제 index.js에서 내가 원하는 시점에 server.start() 함수를 통해 server.js를 호출할 수 있게 되었다!