728x90
1. Express ์๊ฐ
Express๋ Node.js ๊ธฐ๋ฐ์ ์น ํ๋ ์์ํฌ ์ค ํ๋์ด๋ค.
์น ์ดํ๋ฆฌ์ผ์ด์ ์ ์ํด Node.js๋ณด๋ค ๊ฐ์ ๋์ด ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ, ๋น ๋ฅด๊ณ ๊ฐ๊ฒฐํ๊ณ ์ ์ฐํ๋ค๋ ์ฅ์ ์ ๊ฐ์ง๊ณ ์๋ค. ๋ฟ๋ง ์๋๋ผ, ์์ ๋กญ๊ฒ ํ์ฉํ ์ ์๋ ์๋ง์ HTTP ์ ํธ๋ฆฌํฐ ๋ฉ์๋ ๋ฐ ๋ฏธ๋ค์จ์ด๋ฅผ ํตํด ์ฝ๊ณ ๋น ๋ฅด๊ฒ ๊ฐ๋ ฅํ API๋ฅผ ์์ฑํ ์ ์๋ค.
2. Expresss ์ค์น
$ npm init
$ npm install --save express
3. Express ์๋ฒ ๊ตฌ์ถ
app.js
var express = require('express');
var app = express();
// router
app.get('/', function(req, res) {
res.send('Hello home page');
});
app.get('/login', function(req, res) {
res.send('Login please');
});
app.listen(3000, function() {
console.log('Connected 3000 port!');
});
- router : ์ฌ์ฉ์์ ์์ฒญ๊ณผ ์์ฒญ์ ๋ํ ์๋ต์ธ controller์ ์ค๊ณํด์ฃผ๋ ์ญํ
4. ์ ์ ํ์ผ ์๋น์ค
- ์ ์ ํ์ผ: image, js, css์ ๊ฐ์ด ์ง์ ๋ณํ๋ฅผ ์ฃผ์ง ์๋ ์ด์ ๋ณํ์ง ์๋ ํ์ผ
- public ํด๋์ ์ ์ ํ์ผ ์ ์ฅ ex) img.png
app.js
app.use(express.static('public'));
app.get('/image', function(req, res) {
res.send('THis is image, <img src="/img.png>');
});
5. ํ ํ๋ฆฟ ์์ง
- ๋์ ํ์ผ๊ณผ ์ ์ ํ์ผ์ ์ฅ๋จ์ ์ ๊ฒฐํฉํ ์๋ก์ด ์ฒด๊ณ
- ๋์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์ ์ ํ์ผ์ ๋ด๊ธฐ ์ํด ์ฌ์ฉ
- jade, pug, ejs ๋ฑ ๋ค์ํ ์ข ๋ฅ
jade
& npm install jade --save
app.js
app.set(view engine', 'jade');
app.set('views','./views'); // views ํด๋ ์์ฑ ํ์
app.get('/template', function(req, res) {
res.render('example'); // example.jade
});
- ๋ฌธ๋ฒ
example.jade
html
head
body
h1 Hello Jade
ul
-for(var i=0; i<5; i++)
li coding
์ด๋ ์๋ html์ฝ๋์ ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋ธ๋ค.
<html>
<head></head>
<body>
<h1>Hello Jade</h1>
<ul>
<li>coding</li>
<li>coding</li>
<li>coding</li>
<li>coding</li>
<li>coding</li>
</ul>
</body>
</html>
728x90
'Backend > ๐ข Node.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Node.js] ์น ์๋ฒ ๋ชจ๋ ๊ด๋ฆฌํ๊ธฐ - NPM (0) | 2021.09.05 |
---|---|
[Node.js] ์น ์๋ฒ ๊ตฌ์ถํ๊ธฐ - ๊ธฐ์ด (0) | 2021.09.05 |