express 模塊學習
01.js
// npm i express@4.17.1 // npm i -g nodemon // nodemon xx.js const express = require('express') const app = express() app.listen(3000,()=>{ console.log("hello zhangdan") }) app.get('/user',(req,res)=>{ res.send({name: 'zhangdan', age: 19}) }) // 接受問號參數 app.get('/',(req,res)=>{ res.send(req.query) }) // 接受參數 app.get('/user/:id',(req,res)=>{ res.send(req.params) }) // 托管靜態資源 app.use(express.static('public')) // router const router = require('./router') app.use(router) 或者 app.use('/api',router) router.get('/api/user',function(req,res){ res.send({name: 'haha'}) })
router.js
const express = require('express')
const router = express.Router()
module.exports = router
自定義中間件
const express = require('express')
const app = express()
const router = express.Router()
app.listen(3000,function(){
console.log("服務已經啟動")
})
// 定義一個中間件
const myMiddel = (req,res,next)=>{
const t = Date.now()
req.tim = t
next()
}
// 全局注冊中間件
app.use(myMiddel)
app.use('/api',router) // 中間件一定要在路由前面
router.get('/user',(req,res)=>{
res.send(`time:${req.tim}`)
})
// 局部注冊中間件
const jubu = ()=>{console.log("局部注冊中間件")}
router.get('/name',jubu,(req,res)=>{
res.send(`time:${req.tim}`)
})

浙公網安備 33010602011771號