2. Express.js
π Express.jsλ?
1. Node.jsλ₯Ό μν νλ μμν¬
2. Express.jsλ λ―Έλ€μ¨μ΄ μ€μ¬μ΄λ€. κ·Έλμ λ―Έλ€μ¨μ΄λ₯Ό ν΅ν΄ μμ²μ λ°κ³ μλ΅μ λ°νν μ μλ€.
3. λ―Έλ€μ¨μ΄ ν¨μλ μμ²μ΄ ν΄λΉ λ―Έλ€μ¨μ΄ ν¨μμ λλ¬ν λλ§λ€ μ€νλλ€.
4. Expressλ μμ μμ²μ 리μ€λνκ³ λ€μν νμ μ μμ²μ λν μ¬λ¬ μμ μ λ¨μνν μ μλ€.
π Express.js μ€μΉ λ° μ€μ
1. package.json νμΌμ μμ±νκΈ° μν΄μ ν°λ―Έλμμ μ λ ₯νλ€.
$ npm init
2. Expressλ₯Ό μ€μΉνλ€.
$ npm install express --save
3. μ€μΉκ° μ λμλμ§ package.jsonμμ νμΈνλ€.
4. nodemon μ€μΉ(νμλ μλ, κ°λ°ν λλ§ νμν λΌμ΄λΈλ¬λ¦¬λ‘ -devλ₯Ό λΆμ¬μ€λ€.)
server.jsνμΌ μμ ν λλ§λ€ μλ²λ₯Ό λ€μ μ΄μ΄μ€μΌ νλλ° nodemonμ μ€μΉνλ©΄ node.jsλ jsνμΌμ μ€ννκΈ°λ νκ³
νλ‘μ νΈ ν΄λμ λͺ¨λ νμΌμ κ°μλ ν΄μ νμΌμ΄ λ³κ²½λ λλ§λ€ μλ²λ₯Ό μλμΌλ‘ λ€μ μμν΄μ£ΌκΈ° λλ¬Έμ μμ΄ λκ°λ€.
$ npm install nodemon --save-dev
π Express.js κΈ°λ³Έ μΈν
1. μ¬λ¬ κΈ°λ₯μ΄ ν¬ν¨λ μλ² κ°μ²΄λ μμ appμ μ μ₯λκΈ° λλ¬Έμ createServerμ νΈμΆνμ§ μμλ λλ€.
2. expressμ ν΅μ¬μ λͺ¨λ μμ²μ μν©μ λ°λ₯Έ μ¬λ¬ κ°μ λ―Έλ€μ¨μ΄ ν¨μλ₯Ό ν΅ν΄ μμ νλ κ²!
const express = require('express') // express.js κ°μ Έμ¨λ€
const app = express() // express μλ² μμ±
const PORT = process.env.PORT || 4000 // PORTλ²νΈ 4000μ ν λΉ
const bodyParser = require('body-parser')
app.use(bodyParser.json())
// μλ²κ° μμ² μ²λ¦¬νλκ³³(CRUC)
app.post('/users/:name&:age', (req,res)=>{
console.log(req.body) // request body
const name = req.params.name
const age = req.params.age
res.send({ success: `post ${name} & ${age}` })
})
app.get('/users',(req,res)=>{
// console.log('server:/api/get/person')
res.send({person_res:'success!'})
})
// putμ μ 체 μμ
app.put('/users/:name',(req,res)=>{
console.log(req.params)
console.log(req.body)
console.log(req.params.name)
console.log(req.body.age)
const name = req.params.name
const age = req.body.age
res.send({ success: `put ${name} & ${age}` })
})
// patchλ λΆλΆ μμ
app.patch('/users/:name',(req,res)=>{
console.log(req.params)
console.log(req.body)
console.log(req.body.age)
const age = req.body.age
res.send({ success: `patch ${age}` })
})
app.delete('/users/:name',(req,res)=>{
console.log(req.params)
const name = req.params.name
res.send({ success: `delete ${name}` })
})
// listenμ μλ²μ λκΈ°μν (TCP/IP ν΅μ μ κ³Όμ μ€μ μλ ν¨μ)
app.listen(PORT,()=>{
console.log(`Server On: http://localhost:${PORT}`)
})
* μ°Έκ³
https://www.udemy.com/course/react-nodejs-express-mongodb-mern/learn/lecture/33745704#overview