Express是node js應用框架,當中包含了(路由,request,response....等功能)
npm install express --save
express是一個function,將他進行實例化
const express = require('express')
const app = express()
// express內建createServer,所以不用另外創建
app.listen(3000)
express是一個中間件,request發送透過⇒express處理後⇒response給客戶端
.use()設置中間件,可帶入三個參數(request, response, next⇒{})
app.use((req, res, next) => {
// 跳轉至下個中間件
next()
})
app.use((req, res, next) => {
res.send('<h1>第二個中間件</h1>')
})
在app.use中添加路由
app.use('/', (req, res, next) => {
res.send('這是首頁')
})
引入express body-parser解析body
npm install body-parser --save
const bodyParser = require('body-parser')
app.use(bodyParser.urlencoded({ extended: false }))
app.use('/product', (req, res, next) => {
res.send(`${req.body}`)
})
// routes/admin.js
const express = require('express')
const router = express.Router()
router.get('/add-product', (req, res, next) => {
res.send(
'<form action="/product" method="POST"><input type="text" name="title" /><input value="提交" type="submit"/></form>'
)
})
router.post('/product', (req, res, next) => {
console.log(req.body)
res.send(`${req.body.title}`)
})
module.exports = router
引入Router
// app.js
const app = express()
const adminRouter = require('./routes/admin')
app.use(adminRouter )