본문 바로가기

반응형

Programming/Node.js

(5)
[Node.js] express.Router express.Router 클래스를 이용해 모듈러(modular)와 마운트 가능한 핸들러(handler)를 생성할 수 있다. 이를 통해 공통된, 반복된 작업량을 줄일 수 있다. 아래 코드는 애플리케이션의 엔트리 포인트(entry-point)인 main.js 클래스에 Welcome 메시지를 로드하는 indexRouter라는 미들웨어 모듈을 마운트하는 내용이다. /routes/index.js var express = require('express'); var router = express.Router(); var template = require('../lib/template.js'); router.get('/', (request, response) => { var title = 'Welcome'; var ..
[Node.js][Express] 기본 라우팅 라우팅(Routing) 라우팅(Routing)은 URI 주소 및 HTTP 요청(GET, POST..)과 같은 특정 엔드포인트에 대한 클라이언트의 요청에 애플리케이션이 응답하는 방식을 결정하는 것이다. 각 라우트(요청 처리 방식)는 하나 혹은 여러개의 처리 함수를 가질 수 있으며, 라우트가 매칭될 때 실행된다. (여기서 '라우트가 매칭될 때' 라는 말은, '실행 조건을 만족했을 때'라고 이해된다.) 라우트 정의는 다음과 같은 기본 구조를 가진다. app.METHOD(PATH, HANDLER) 'app'은 요청한 모듈 express의 인스턴스다. 예를 들면, 아래와 같이 설정할 수 있다. const express = require('express') //express 모듈 호출 const app = expr..
[Node.js] PM2 활용 PM2 PM2는 Node.js 사용 시 무중단 서비스를 구현할 수 있도록 도와주는 모니터링 도구. 데몬 프로세스 매니저로서 백그라운드에서 동작한다. 설치 npm install pm2 -g -g : 전역(global) 설치 실행 pm2 start 실행파일 pm2 start 실행파일 --watch --watch : Watch 하고 Restart 한다(디렉토리 내 파일에 변화를 감지하면 자동으로 새로고침) pm2 start 실행파일 --watch --no-daemon --no-daemon : no daemon(백그라운드) 실행을 통해 pm2 logs를 통하지 않고도 바로 로그를 확인 할 수 있다. --watch 옵션을 사용하면 실행하는 파일에 변동사항이 있을 때마다 새로고침을 수행한다. 이렇게 되면 후에 se..
[Node.js][보안] sanitize-html 사용 sanitize-html은 악성 스크립트를 삽입해 웹 서비스 보안 문제를 야기하는 XSS(Cross Site Script)를 방지하기 위한 node의 패키지 모듈이다. 해당 모듈을 사용하면 와 같은 스크립트 태그를 통한 악성 코드 실행을 방지한다. 설치 npm install -S sanitize-html npm install -g sanitize-html -S : 해당 프로젝트에만 적용 -g : 전체(global) 적용 사용 var 변수명 = require('sanitize-html'); require()를 통해 외부 모듈을 가져온다.(자신이 작업하는 디렉터리에서 node_modules 디렉터리 내부를 찾아보면 sanitize-html 모듈을 찾을 수 있다.(정상적으로 설치되었을 시)) var sanit..
[Node.js] 작업 환경 구성 및 서버 실행 Node.js 요즘 구직 사이트 웹 개발자 채용 공고에 [우대사항]으로 자주 출몰하는 기술이다. 지식의 폭을 넓히고 싶은 마음에 Node.js 공부를 시작했다. Node.js 설치 https://nodejs.org/en/download/ Download | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org Visual Studio Code 설치 https://code.visualstudio.com/download Download Visual Studio Code - Mac, Linux, Windows Visual Studio Code is free and available on your fa..

반응형