본문 바로가기

전체 글

(432)
Express - app.js 소스 살펴보기 전체 코드 var createError = require('http-errors'); var express = require('express'); var path = require('path'); var cookieParser = require('cookie-parser'); var logger = require('morgan'); var indexRouter = require('./routes/index'); var usersRouter = require('./routes/users'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade')..
Express - 17. 수업을 마치며 1. Template engine html을 직접 타이핑하여 코딩하는 귀찮음을 덜어주는 언어 pug express와 함께 자주 사용되는 template engine. 적은 코드를 이용하여 많은 html코드를 자동으로 입력할 수 있다. Getting Started – Pug Getting Started Installation Pug is available via npm: $ npm install pug Overview The general rendering process of Pug is simple. pug.compile() will compile the Pug source code into a JavaScript function that takes a data object (called “locals”..
Express - 16. express generator Express 애플리케이션 생성기 Express 애플리케이션 생성기 애플리케이션의 골격을 신속하게 작성하려면 애플리케이션 생성기 도구인 express를 사용하십시오. 다음의 명령을 이용해 express를 설치하십시오. $ npm install express-gener expressjs.com 설치 npm install express-generator -g - 사용방법에 대한 예시 보기 express -h express를 이용하여 프로젝트 실행하기 express my-app[디렉토리명] my-app 프로젝트를 생성한다. cd my-app npm install my-app 디렉토리로 이동하고, my-app에 있는 package.json에 있는 필요한 dependencies를 node_modules 디렉토리에..
Express - 15. 보안 프로덕션 환경의 Express를 위한 보안 우수 사례 프로덕션 우수 사례: 보안 개요 “프로덕션 (production)” 이라는 용어는 소프트웨어 라이프사이클 중 애플리케이션 또는 API가 최종 사용자 또는 소비자에게 정식으로 제공되는 단계를 말합니다. expressjs.com 보안 지침 1. Express를 최신 버전으로 유지하기 2. TLS 사용하기 (https) 3. Helmet 사용하기 - 발생하는 보안 이슈를 자동으로 해결해주는 모듈 - Helmet 설치 $ npm install --save helmet - Helmet 사용 var helmet = require('helmet'); app.use(helmet()); - 자동으로 Helmet이 가진 기능들이 기본적으로 설정된다. 또한 이의 기능들의..
Express - 14.3. 라우터 - 파일로 분리 - index 목표 현업에서는 라우트 개수가 1000개 2000개로 엄청 많다. 이를 정리하는 테크닉을 배우자. (1) 주소체계 변경 (2) 파일로 분리 console.log(`Example app listening at http://localhost:${port}`)) routes>index.js var express = require('express'); var router = express.Router(); var template = require('../lib/template'); // 1. 홈 페이지 // app.get('/', (req, res) => { res.send('Hello World!')}) router.get('/', function(request, response){ var title = 'W..
Express - 14.2. 라우터 - 파일로 분리 목표 현업에서는 라우트 개수가 1000개 2000개로 엄청 많다. 이를 정리하는 테크닉을 배우자. (1) 주소체계 변경 (2) 파일로 분리 { res.send('Hello World!')}) app.get('/', function(request, response){ var title = 'Welcome'; var description = 'Hello, Node.js'; var list = template.list(request.list); var html = template.html(title, list, `create`, `${title}${description} ` ); response.send(html); }); app.use(function(req, res, next){ res.status(404..
Express - 14.1. 라우터 - 주소체계변경 목표 현업에서는 라우트 개수가 1000개 2000개로 엄청 많다. 이를 정리하는 테크닉을 배우자. (1) 주소체계 변경 /topic - /delete_process -> /topic/delete_process - /create -> /topic/create - 위의 세 경우 코드를 pageid 위로 옮김 const express = require('express'); const app = express(); const fs = require('fs'); const path = require('path'); const qs = require('querystring'); const sanitizeHtml = require('sanitize-html'); const template = require('./li..
Express - 13. 에러처리 목표 에러처리하는 방법 알기 1. 존재하지 않는 페이지를 찾았을 때 발생하는 에러 (404) http상에서는 404 Not found 에러를 보내주기로 약속되어 있다. Google에 express 404 검색해보자. Express 자주 묻는 질문(FAQ) 자주 묻는 질문(FAQ) 애플리케이션을 어떻게 구조화해야 합니까? 이 질문에는 정확한 답이 없습니다. 그 답은 애플리케이션의 규모 및 참여하는 팀의 규모에 따라 달라질 수 있습니다. 최대한의 � expressjs.com 즉, 코드 아래에 다음 코드를 추가해준다. 이 코드는 미들웨어이다. 미들웨어는 순차적으로 실행된다. 이 코드를 마지막인 app.listen위에 작성하게 되면 위의 작성한 path들을 못찾고 그외의 주소에 접근한 경우이다. 그때 404 s..

반응형