一開始看教程視頻的時候,上面只是簡單地說.get()是處理get請求,.post()處理post請求
而.use()是可以處理get和post
然而,我寫了兩個接口,一個是/user/detail,一個是/user,發現,前面/user會把/user/detail給覆蓋掉
然後你訪問user/detail的時候,響應的是/user
什麼時候用.use()
要使用中間件的時候,比如添加過濾器,判斷是不是有session
const express=require('express')
//讀取cookie的模塊
const cookieParser=require('cookie-parser')
const expressStatic=require('express-static')
var server=express()
server.use('/',function(req,res,next){
console.log("中間件")
next()
})
server.use('/nodejs',function(req,res){
res.cookie('username','linyongbin')
res.send('welcome nodejs')
})
//加了path之後,cookie只能在/lin路徑下才能訪問,maxAge是cookie的存活時間,單位是毫秒
server.get('/lin',function(req,res){
res.cookie('age',16,{path:'/lin',maxAge:15*1000})
res.send('welcome lin')
})
server.get('/lin/secret',function(req,res){
req.secret='s9udbgeusdne2123'
res.cookie('password','linyongbin',{signed:true})
res.send("cookie加密")
})
server.listen(8080)
比如上面我們對根路徑使用use(),那麼他下面所有的子路徑都要經過use之後才能繼續下去
所以不管我們訪問什麼,後臺都會打印‘中間件’三個字
————————————————
版權聲明:本文爲CSDN博主「BUG_攻城獅」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/abc_123456___/article/details/99960436