npm i express --save
λ‘ μ€μΉνκ³ ,
js νμΌμ λ§λ ν
const express = require('express');
const server = express();
server.get('/', (req, res) =>{
res.send('Hello!')
})
server.listen(port, () => {
console.log('server has started')
})
μλ°μμΌλ‘ μμ± ν λ€, node -.js
λ₯Ό ν°λ―Έλμ μ¬μ©ν΄μ£Όλ©΄ μλ²κ° μμλλ€.
Routingμ URI λ° νΉμ ν HTTP μμ² λ©μλμΈ νΉμ μλν¬μΈνΈμ λν ν΄λΌμ΄μΈνΈ μμ²μ μλ²κ° μλ΅νλ λ°©λ²μ κ²°μ νλ κ²μ λ§νλ€.
app.METHOD(PATH, HANDLER)
- appμ expressμ μΈμ€ν΄μ€μ΄λ€.
- METHODλ GET, POST λ±μ HTTP μμ² λ©μλμ΄λ€.
- PATHλ μλ²μμμ κ²½λ‘μ΄λ€.
- HANDLERλ λΌμ°νΈ(μλ²μμ λ³΄λΈ μμ²μ PATHμ METHOD)κ° μΌμΉν λ μ€νλλ ν¨μμ΄λ€.
ex)
const express = require('express');
const server = express();
server.post('/post' (req, res) => {
res.status(201).send('Posted!')
})
/post κ²½λ‘λ‘ ν¬μ€νΈ μμ²μ΄ λ€μ΄μμλ μλ²κ° 'Posted!'λΌλ λ¬Έμμ΄μ 보λ΄μ€λ€.
μλ΅ λ©μλλ μλ΅μ ν΄λΌμ΄μΈνΈλ‘ μ μ‘νκ³ μμ² - μλ΅ μ£ΌκΈ°λ₯Ό μ’
λ£ν μ μλ€.
μμ² - μλ΅ μ£ΌκΈ°μμ μλ΅ λ©μλκ° μ¬μ©λμ§ μλλ€λ©΄ ν΄λΌμ΄μΈνΈ μμ²μ λ°©μΉλλ€.(κ·Έλ₯ κ³μ μμ²μν)
λνμ μΈκ±° λͺκ°λ§ μκ°νμλ©΄,
λ©μλ | μ€λͺ |
---|---|
res.end() | μλ΅ νλ‘μΈμ€λ₯Ό μ’ λ£νλ€. |
res.send() | λ€μν μ νμ μλ΅μ μ μ‘νλ€. |
res.json() | JSON μλ΅μ μ μ‘νλ€. |
res.redirect() | μμ²μ κ²½λ‘λ₯Ό μ¬μ§μ νλ€. |
res.render() | 보기 ν νλ¦Ώμ λ λλ§νλ€. |
res.sendStatus() | μλ΅ μν μ½λλ₯Ό μ€μ ν ν ν΄λΉ μ½λλ₯Ό λ¬Έμμ΄λ‘ ννν λ΄μ©μ μλ΅ λ³Έλ¬ΈμΌλ‘μ μ μ‘νλ€. |
express.Router ν΄λμ€λ₯Ό μ΄μ©νλ©΄ λͺ¨λμμΌλ‘ λ§μ΄ν
κ°λ₯ν νΈλ€λ¬λ₯Ό λ§λ€ μ μλ€.
μ΄λ₯Ό λ―Έλ μ±μ΄λΌκ³ λΆλ₯΄λ κ²½μ°λ μλ€.
router.js νμ₯μμ νμΌμ λ§λ€κ³
const express = require('express');
const router = express.Router();
router.get('/', (req, res) =>{
res.send('router loaded!')
})
router.get('/somewhere', (req, res) => {
res.send('requesting Reading somewhere')
})
module.exports = router;
λ₯Ό μμ±ν ν ν΄λΉ λΌμ°ν°λ₯Ό μλ².jsμμ λΆλ¬μ μ¬μ©νλ€.
const routing = require('λΌμ°ν°.js κ²½λ‘/router')
server.use('/λΌμ°ν
νκΈ° μνλ path', routing)
μ΅μ€νλ μ€.
μ²μ λ§λ¬μλλ λ μ΄λ° λμ΄ λ€ μμ§ μΆμμ§λ§, λ€μ΄ν°λΈ λ
Έλ보λ€κ° μ΄ μ΅μ€νλ μ€ λΌμ΄λΈλ¬λ¦¬λ₯Ό 보λκΉ μ λ
λ€.
μΏΌλ¦¬λ‘ apiλμκ³ μ¬μ©νλκ² λΈλΌμ°μ κ° μμμ ν΄μ£Όλκ² μλλΌ μΌμΌμ΄ ꡬννλκ±° μλ€λ.
κ°λ°μλ λλ¨νꡬλ.