nodejs로 작성된 서버를 실행하는 방법에는 여러 가지가 있다. server.js 라는 파일에 서버 코드를 작성 하였다고 가정하면. 1. 파일을 직접 실행 node server.js 2. package.json에 실행 명령을 등록한 후 npm 명령을 통해 실행 { ... "scripts": { "start": "node server.js" }, ... } npm start # 또는 npm run start 3. pm2를 활용하여 실행 pm2 start server.js 1, 2번의 경우 서버 실행 시 프로세스가 foreground에 떠있으므로 새로운 작업을 하려는 경우 새로운 세션을 열어 작업을 해야한다. background에서 동작하도록 처리하는 방법은 여러가지가 있으나 pm2를 사용할수만 있다면 그..
기본적으로 Javascript의 원시 타입(Undefined, Null, Boolean, Number, String 등)을 제외한 모든 객체는 mutable하다. 즉 생성된 이후에 언제든 변경될 수 있다. 이런 mutable한 객체를 immutable하게 변경하는 것도 가능하다. 다음의 두 옵션을 활용해볼 수 있다. 1. Object.defineProperty를 통한 설정 let customObj = {}; Object.defineProperty(customObj, "newKey", {value: "newValue"}); 위와 같이 Object.defineProeprty 메소드를 사용하면 newKey의 값은 읽기 전용이되어 수정하는 것이 불가해진다. 이 메소드는 writable 옵션을 포함하고 있는데 기..
nodejs 프로젝트 구성 시, 페이지를 표출하기 위한 서버와 api 통신을 위한 서버를 분리하는 경우가 많다. 분리하면 각각을 별도로 작업할 수 있어 전체적인 서비스에 주는 영향을 줄일 수 있지만, 그 만큼 관리해야 하는 서버가(포트가) 늘어나는 것도 사실이다. 따라서 작은 서비스의 경우 api 통신을 위한 서버를 분리하지 않고 합쳐서 진행할 수도 있다. 서버를 실행하면 페이지의 리소스에 접근이 가능하고, path에 따라 api 통신을 하기도 하는 것이다. 대략 아래와 같은 구조를 갖는 서버가 될 것이다. const express = require("express"); const app = express(); const fetch = require("node-fetch"); app.use("/", ex..
- Total