ํฐ์คํ ๋ฆฌ ๋ทฐ
์น ์ ํ๋ฆฌ์ผ์ด์
Express๋ ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ ์ผ๋ จ์ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฐ๊ฒฐํ๊ณ ์ ์ฐํ Node.js ์น ์ ํ๋ฆฌ์ผ์ด์ ํ๋ ์์ํฌ์ ๋๋ค.
express ํ๋ ์์ํฌ๋ฅผ ์ ๋๋ก ๋ฐฐ์ฐ๋ ค๋ ๋ชฉ์ ์ ์๋๊ณ ์ด๋ฐ ๊ฒ๋ ์ฌ์ฉํ๋ค. ๋ผ๋ ๊ฐ๋ณ๊ฒ ์์๊ฐ๋ ์๋ฏธ๋ก ์์ฑํ๋ ๊ธ์ ๋๋ค.
์ผ๋จ ์ค์น ๋ฐฉ๋ฒ๋ถํฐ ์์๋ณด์.
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
์ด์ ๊ธ์์๋ ๊ณ์ ํ๋ ์์ ์ธ๋ฐ express๋ฅผ ์ด์ฉํด์ ํ๋ ์์ ์ด๋ค.
require๋ฅผ ์ด์ฉํด์ express ๋ชจ๋์ด ๋ฐํํ๋ ๊ฐ์ฒด๋ฅผ express ๋ณ์๊ฐ์ ์ ์ฅํ๊ณ , express๋ผ๋ ๋ฉ์๋๋ฅผ ์คํํ๋ฉด application์ ๋ฆฌํดํ๋ฏ๋ก (๋ฉ๋ด์ผ์ ์ธ ๋ถ๋ถ) ๊ทธ ๊ฐ์ app์ด๋ผ๋ ๋ณ์์ ์ ์ฅํ๋ค.
get ๋ถ๋ถ์ ๊ฑด๋ ๋ฐ์ด์ listen๋ถ๋ถ์ ๋จผ์ ๋ณด๊ฒ๋๋ฉด 3000๋ฒ ํฌํธ์ listenํ๊ฒ ๋๋ฉด callback function์ธ console.log('Example app listening on port 3000!');
์ ๋ก๊ทธ๊ฐ ์ฐํ๊ฒ ๋๋ค.
๋ง์ง๋ง์ผ๋ก get ์ด๋ผ๊ณ ํ๋ ๊ฒ์ ์ฌ์ฉ์๊ฐ ์น์๋ฒ์ ์ ์ํ๋ ๋ฐฉ์์ค์ ํ๋์ธ๋ฐ GET๋ฐฉ์๊ณผ POST๋ฐฉ์์ผ๋ก ๋๋๋ค. ์ผ๋จ ๊ทธ๋ฐ ๊ฐ๋ ์ด ์๋ค๋ ๊ฑธ๋ก๋ง ๋์ด๊ฐ๊ณ ์์ ๊ฐ์ ์ฝ๋๋ get๋ฐฉ์์ผ๋ก home(root)์ ์ ์ํ์ ๋ ๋ ๋ฒ์งธ ์ธ์๋ก ์ ๋ฌ๋ function์ด ์คํ๋๋๋ก ํ๋ ์ฝ๋์ด๋ค.
ํด๋น ์ฝ๋๋ฅผ ์คํํ๊ฒ ๋๋ฉด localhost:3000์ผ๋ก ์ ์ํ๊ฒ ๋์์ ๋ Hello World์ ๋ฌธ์ฅ์ ์ถ๋ ฅํด์ฃผ๊ฒ ๋๋ค.
app.get('/login', function (req, res) {
res.send('Login Please!');
});
์์๊ฐ์ด ๊ฒฝ๋ก๋ฅผ ์์ ํด์ฃผ๊ฒ ๋๋ฉด localhost:3000/login ์ ์ฃผ์๋ก ๋ค์ด๊ฐ์ ๋ Login Please! ์ ๋ฌธ์ฅ์ด ์ถ๋ ฅ๋๊ฒ ๋๋ค.
get์ด๋ผ๊ณ ํ๋ ๋ฉ์๋๋ฅผ '๋ผ์ฐํฐ' ๋ผ๊ณ ๋ถ๋ฅด๋ฉฐ ๋ผ์ฐํฐ๋ฅผ ์ด์ฉํ๋ ์์ ์ '๋ผ์ฐํ ' ์ด๋ผ๊ณ ํ๋ค.
์ด๋ค ์์ฒญ์ด ๋ค์ด์์ ๋ ๊ธธ์ ์ฐพ์ ์ ์๋๋ก ์ฐ๊ฒฐํด์ฃผ๋ ์ญํ ์ ํ๋ ๊ฒ์ด get์ด ํ๋ ์ญํ ์ด๋ค.
Express์ ๋ฒ์๊ฐ ๋ฐฉ๋ํด์ ์ด ๋ค์์๋ Express์ ๋ํ ๋ด์ฉ์ผ๋ก ํฌ์คํ ์ ํ ์์ ์ด๋ค. ์ผ๋จ ๊ธฐ์กด์
require('http') ๋ฅผ ์ด์ฉํด์ http.createServer๋ฅผ ์ด์ฉํด์ ์์ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ ์์ค๋ฅผ ์์ฑํ์๋๋ฐ,
๊ตณ์ด ์ง๊ธ ๋ค๋ฅธ์ ์ ๊ผฝ์๋ฉด ๋ด๊ฐ root ์ฃผ์๋ก ์ ๊ทผํ๋๊ฑด์ง ์๋๋ฉด login์ ํ๋ ํ์ด์ง์ ์ ๊ทผํ๋๊ฑด์ง
ํ์๊ฐ์ ์ ํ๋ ํ์ด์ง์ ์ ๊ทผํ๋ ๊ฒ์ธ์ง ๊ตฌ๋ถ์ ํ๋ค๋ ์ ๋?
๊ณ์ ํฌ์คํ ์ ํ๋ฉด์ ์ ์ฉํ๋ค๋ฉด ๊ณ์ ์ฐ๊ฒ ๊ณ ์๋๋ฉด ์์จ๋ ๋ ํ ๊ณ .. ๋ฌดํผ ๊ทธ๋ ๋ค!
'Node.js > Node.js ๊ณต๋ถ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
express(3) - ๋์ ํ์ผ์๋น์ค (0) | 2018.04.06 |
---|---|
express(2) - ์ ์ ํ์ผ์๋น์ค (0) | 2018.04.02 |
[๋ณด์ถฉ] Node.js ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ(aka. callback function) (0) | 2018.03.22 |
3. ๊ฐ๋จํ ์น ์๋ฒ ๋ง๋ค๊ธฐ (0) | 2018.03.21 |
2. Node.js ๊ฐ๋ฐํ๊ฒฝ ์ค์ (Mac OSX) (4) | 2018.03.21 |
- Total
- Today
- Yesterday
- NestJS
- node.js backend
- typeorm ์ฐ๊ฒฐ
- nestjs/cli
- nestjs directory
- Promise bulk
- nestjs module
- sequelize
- Request_Limit_Exceeded
- ํ๋ก๊ทธ๋๋จธ์ค
- nestjs configService
- Spring Async
- ๊ธฐ์์ฒญAPI
- Spring
- android
- backend-framework
- nestjs doc
- ๋น๋๊ธฐ ์์ฒญ
- nestjs config
- JavaScript
- @nestjs/config
- docker mysql
- Promise error
- nestjs project
- ์๊ณ ๋ฆฌ์ฆ
- typeorm
- node.js
- DeferredResult
- foreignkey
- nestjs typeorm
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |