서버억

🏊 미들웨어 : 하나의 함수를 통해서만 요청이 흘러가는 node.js와 대조적으로 ,함수를 효과적으로 배열하는 미들웨어 스택

요청/ 응답 개체에 대한 확장 - response.redirect(...)나 response.sendFile(...)처럼 확장기능

🏌 views - 뷰를 사용해서 HTML을 동적으로 렌더링 할수있음(뷰템플릿 pug, ejs)

🏄 Morgan : 로그 기록을 남기는 morgan 모듈 ( npm install morgan --save )
< var logger = require("morgan") // 로그모듈 >
< app.use(logger("short")); // logger("short")은 함수 반환 >
< GET / 200 51.267 ms - 1539>

🚣 Express.static : Express 에서 제공되고 정적 파일 서비스를 도와준다.

__dirname 은 현재위치를 가리키는 node 전역변수
path.resolve를 사용하는 이유는 OS /public 처럼 분리자가 다를 수 있는데 그것을 처리해 주기 때문

var publicPath = path.resolve(__dirname,"public");
app.use(express.static(publicPath));

🏂 라우팅 : HTTP메서드(get,post,put,delete)로 특정 URL을 방문할 때만 함수가 호출됨.

app.get과 앞에 url을 통해서 라우트되는 곳마다 다르게 보여줄 수 있다.

app.get("/",function(request,response){
  response.end("welcome to my homepage!");
});
app.get("/about",function(request,response){
  response.end("welcome to my about page!");
});

🏋 Connect-flash

fonnect-flash, session은 node.js에 모듈이어서 미들웨어를 꼭 선언해주어야 합니다.

var session  = require('express-session');
var flash    = require('connect-flash');
app.use(flash());