Express: 7개의 글
프로젝트를 만들기 위해서는 New > Node.js Express Project 여기서는 ejs의 template engine을 사용하기 때문에 ejs로 변경시켜준다. MVC Patterm으로 프로젝트가 생성되었다. app.js의 코드를 보면 아래와 같다. 자동적으로 모든 환경설정을 자동으로 생성해주는 것을 볼수 있다. 이제 MVC에 맞도록 코딩을 하면 끝... 이렇게 쉽다니... 출처 : ourcstory.tistory.com/14?category=664896
기존에는 var reqHandler = function(req, res) { res.writeHead(200, {"Content-Type":"text/html"}); res.end("Welcome to Server."); }; var server = http.createServer(reqHandler); server.listen(8080, function() { console.log('running on 8080...'); }); 로 사용을 했지만. reqHandler를 만들지 않고, express()를 사용했다. express를 사용하면 var app = express(); app.use(function(req, res) { res.send("Welcome to Server."); }); http 모듈..
router 미들웨어 (길잡이를 해주기 때문에 이름이 router입니다.) - 요청 메서드와 url에 따른 분기 - 개별 함수를 통한 1:1 작업 분화 - app.use()라는 것을 app.get()처럼 표현.. ? - router.get()이 많이 나온다구...? - use에서 if 문으로 분기를 나눠서 처리하는게 너무 많은거야.. 그래서 router로 만들어보자. use함수 제조기를 router라고 만들자. - 필요에 의해 새로운 router 생성 - 별도의 context 생성의 의미 var router = new Router(); router.get('/plus', function() {}); router.get('/minus', function() {}); app.use(router); 있었는데,..
express 모듈 사용하기. expressjs.com 1. 설치하기 npm install express --save (--save는 나중에 배포하기 쉽게 하기 위해서 옵션을 넣습니다.) http의 모듈의 불편함을 개선하고자 request와 response 객체에 추가된 기능 다양한 미들웨어를 제공 - use() 함수 - request 이벤트 리스너를 연결 - 연쇄적, 구간별 작업 처리 (waterfall의 callback과 유사한 작업 처리) minimal하고 flexible node.js web application framework입니다. web과 mobile application 2. Express란 Request 이벤트를 핸들하기 위한 Framework입니다. [참고] http://express..
참조문서 : http://ejs.co/#docs 1. ejs 란? ejs는 Embedded JavaScript Template의 약자로 nodejs 진영에서 많이 사용하는 템플릿엔진이다. 문법이 단순하다. 2. 기본 문법 주석 : JS 코드 : 변수 출력(html escape 처리: >를 $gt로 변환) : 태그내부 공백 제거 : html escape안하고 변수 출력 : ejs 분할 3. nodejs와 연동(= 데이터 넘겨주기) 3-1. express 없이 연동하기 const ejs = require("ejs"); ejs.render(경로, 데이터, 옵션); 3-2. express 에서 연동하기 app.js 에서 app.set('view engine', 'ejs'); 처리하는 라우터에서 아래와 같은 로직..
참조문서 : https://www.npmjs.com/package/body-parser post로 요청된 body를 쉽게 추출할 수 있는 모듈이다. 추출된 결과는 request객체(IncomingMessage 타입)에 body 속성으로 저장된다. API문서보면 다양한 메소드들이 많지만, 여기서는 URL-encoded form body parser만 사용한다. npm install body-parser 로 설치한다. 1. http 내장모듈만 쓰는 것과 뭐가 틀린가? http모듈로만 post body를 파싱하려면, req.on('data', function(chunk) { body += chunk; }); 와 같이 이벤트를 등록해야한다. 그다음에 인코딩처리를 해줘야한다. 그치만 body-parser를 쓰면 ..
참조문서 : http://expressjs.com/en/4x/api.html express는 경량 HTTP 웹 프레임워크다. 요청과 응답, 미들웨어 사용, 템플릿 엔진을 제공한다. npm install express 로 설치한다. 1. 미들웨어 작은 단위 모듈로 요청과 응답을 처리하는 함수 형태 express는 여러 개의 미들웨어로 구성 미들웨어 사용 설정 : app.use([미들웨어]) 예제 app.use(function (req, res) { res.send('hello Express!'); }); 1-1. 미들웨어 설정(mount) app.use([path,] function [,function]) path를 생략하면 루트(/)이다. function을 2개이상 둘 수도있다. 즉 같은 요청을 여러개의..