Web/Nodejs

Node.js (Express)

알로그 2020. 1. 8. 20:59
반응형

Node.js Express Framework

생활코딩 Node.js를 이용해 웹애플리케이션 만들기 강좌의 내용을 정리해본다.

 

Express

Nodejs에서 가장 잘 알려진 웹 프레임워크인 Express를 사용해보자.

http://expressjs.com/ko/

 

Express - Node.js 웹 애플리케이션 프레임워크

Node.js를 위한 빠르고 개방적인 간결한 웹 프레임워크 $ npm install express --save

expressjs.com

 

Install 

$ npm install express --save

 

 

Sample code

아래는 Express를 활용한 간단한 소스코드 예제이다.

 

get 메소드는 라우팅 역할을 하며 URL에서 '/' 위치로 가면 hello world가 response되며 '/login'으로 접속하면 please login이 response 되는 예제이다.

var express = require('express');
var app = express();

// respond with "hello world" when a GET request is made to the homepage
app.get('/', function(req, res) {
	res.send('hello world');
});

app.get('/login', function(req, res) {
	res.send('please login');
});

app.listen(3000, function(){
	console.log('Connected 3000 port');
});

결과

 

Express 정적파일 제공

이미지와 파일과 같은 정적인 파일을 보여주기 위해서 미들웨어 함수인 express.static을 사용할 수 있다.

사용방법 : app.use(express.static('directory path'))

 

위의 함수를 사용하면 디렉토리에 포함된 파일을 url 뒤에 파일명으로 바로 접근가능

예제) http://localhost:3000/images/kitten.jpg 

var express = require('express');
var app = express();
app.use(express.static('public'))

app.get('/', function(req, res) {
	res.send('hello world');
});

app.get('/route', function(req, res){
	res.send('Hello Router, <img src="/route.png">')
});

app.get('/login', function(req, res) {
	res.send('please login');
});

app.listen(3000, function(){
	console.log('Connected 3000 port');
});

 

html과 같은 정적인 파일은 수정하면 바로 express에서 변경사항이 반영이 된다.

하지만 동적으로 값을 보여주기 위해 app.get 함수에서 변수를 이용해서 값을 변경하고자 하면 바로 반영이 안되고, node를 재실행해야한다.

 

동적, 정적으로 값을 작성하기 위해 Express에서는 템플릿 엔진이라는 기능을 제공한다.

다음 포스팅에서 Express 템플릿 엔진에 대해 알아보자.

반응형

'Web > Nodejs' 카테고리의 다른 글

Node.js (Supervisor)  (0) 2020.04.04
Node.js (쿼리)  (0) 2020.01.17
Node.js (Express, 템플릿 엔진)  (0) 2020.01.11
Node.js  (0) 2020.01.06