局部生效的中间件
不适用app.use()定义的中间件
路由请求地址,中间件函数,路由处理函数----代表这个中间件只在这个客户端 请求这个url地址的时候才生效(不会影响其他路由)
//创建基本web服务器
const express=require('express')
//创建服务器
const app=express()
//定义中间件函数
const mv=function(req,res,next){
console.log('这中间件函数')
next()//把流转关系 转交给下一个中间件或者路由---只要这中间件中的业务处理完毕必须在最后调用next函数
}
//定义一个路由
app.get('/',(req,res)=>{
res.send('响应客户端127.0.0.1/的get请求')
})
//定义一个路由
app.get('/user',mv,(req,res)=>{
res.send(' 响应客户端的127.0.0.1/user的get请求 局部中间件会生效')
})
app.listen(80,()=>{
console.log('服务器启动成功 127.0.0.1')
})
定义多个中间件
第一个是请求的url,第三个是路由处理函数。中间可以写任意多个局部中间件,也存在先后顺序,从前到后 -可以用,分割 也可以使用数组进行分割
app.get('/user',mv1,mv2,(req,res)=>{
res.send(' 响应客户端的127.0.0.1/user的get请求 局部中间件会生效')
})
app.get('/user',[mv1,mv2],(req,res)=>{
res.send(' 响应客户端的127.0.0.1/user的get请求 局部中间件会生效')
})
//创建基本web服务器
const express=require('express')
//创建服务器
const app=express()
//定义中间件函数
const mv1=function(req,res,next){
console.log('局部中间件函数1')
next()//把流转关系 转交给下一个中间件或者路由---只要这中间件中的业务处理完毕必须在最后调用next函数
}
const mv2=function(req,res,next){
console.log('局部中间件函数2')
next()//把流转关系 转交给下一个中间件或者路由---只要这中间件中的业务处理完毕必须在最后调用next函数
}
//定义一个路由
app.get('/',(req,res)=>{
res.send('响应客户端127.0.0.1/的get请求')
})
//定义一个路由
app.get('/user',mv1,mv2,(req,res)=>{
res.send(' 响应客户端的127.0.0.1/user的get请求 局部中间件会生效')
})
app.listen(80,()=>{
console.log('服务器启动成功 127.0.0.1')
})