欢迎访问上海市某某有限公司
上海市某某有限公司专注网站制作10年!为企业打造专业的互联网营销解决方案
全国咨询热线: 18123456789
联系我们

上海市某某有限公司

地址:某某市某某区某某公路666弄66号

手机:18123456789

电话:021-6666666

邮箱:313801120@qq.com

当前位置:首页 > 新闻资讯 > 编程语言 > nodejs >

express中间件 next 函数的介绍和使用

时间:2022/7/15 8:50:33 作者: 点击:112次

第一种:最简单的中间件函数

 
 // express中间件 next 函数的作用 
 // next 函数是实现多个中间件连续调用的关键,它表示把流转关系转交给下一个中间件或路由。 
  
 const express = require('express'); 
 const app = express(); 
  
 // 定义一个最简单的中间件函数 
 const mw = function(req,res,next){ 
 	console.log('这是最简单的中间件函数'); 
 	//把流转关系,转交给下一个中间件或路由 
 	next(); 
 } 
  
  
 //3 启动 web 服务器 
 app.listen(81,()=>{ 
 	console.log('express server runing at http://127.0.0.1:81') 
 }) 
 
第二种:全局生效中间件
 
 // express中间件 next 函数的作用 
 // next 函数是实现多个中间件连续调用的关键,它表示把流转关系转交给下一个中间件或路由。 
  
 const express = require('express'); 
 const app = express(); 
  
 // 定义一个最简单的中间件函数 
 const mw = function(req,res,next){ 
 	console.log('这是最简单的中间件函数'); 
 	//把流转关系,转交给下一个中间件或路由 
 	next(); 
 } 
  
 //将 mw 注册为全局生效的中间件 
 app.use(mw); 
 app.get('/',(req,res)=>{ 
 	console.log('调用了 / 这个路由'); 
 	res.send('Home Page.'); 
 }) 
 app.get('/user',(req,res)=>{ 
 	console.log('调用了 /user 这个路由'); 
 	res.send('user page.'); 
 }) 
  
 //3 启动 web 服务器 
 app.listen(81,()=>{ 
 	console.log('express server runing at http://127.0.0.1:81') 
 }) 
 
第三种:定义全局中间件的简单形式
 
 // express中间件 next 函数的作用 
 // next 函数是实现多个中间件连续调用的关键,它表示把流转关系转交给下一个中间件或路由。 
  
 const express = require('express'); 
 const app = express(); 
  
 // // 定义一个最简单的中间件函数 
 // const mw = function(req,res,next){ 
 // 	console.log('这是最简单的中间件函数'); 
 // 	//把流转关系,转交给下一个中间件或路由 
 // 	next(); 
 // } 
  
 // //将 mw 注册为全局生效的中间件 
 // app.use(mw); 
  
 // 这是定义全局中间件的简单形式 
 app.use((req,res,next)=>{ 
 	console.log('这是一个最简单的中间件函数。') 
 	next(); 
 }) 
  
 app.get('/',(req,res)=>{ 
 	console.log('调用了 / 这个路由'); 
 	res.send('Home Page.'); 
 }) 
 app.get('/user',(req,res)=>{ 
 	console.log('调用了 /user 这个路由'); 
 	res.send('user page.'); 
 }) 
  
 //3 启动 web 服务器 
 app.listen(81,()=>{ 
 	console.log('express server runing at http://127.0.0.1:81') 
 }) 
 
第四种:中间件作用和应用
 
 // express中间件 next 函数的作用 
 // next 函数是实现多个中间件连续调用的关键,它表示把流转关系转交给下一个中间件或路由。 
  
 const express = require('express'); 
 const app = express(); 
  
   
  
 // 这是定义全局中间件的简单形式 
 app.use((req,res,next)=>{ 
 	//获取到请求到服务器的时间 
 	const time = Date.now(); 
 	// 为 req 对象,挂载自定义属性,从而把时间共享给后面的所有路由 
 	req.startTime=time; 
 	next(); 
 }) 
  
 app.get('/',(req,res)=>{ 
 	console.log('时间:'+req.startTime); 
 	res.send('Home Page.'); 
 }) 
 app.get('/user',(req,res)=>{ 
 	console.log('调用了 /user 这个路由'); 
 	res.send('user page.'); 
 }) 
  
 //3 启动 web 服务器 
 app.listen(81,()=>{ 
 	console.log('express server runing at http://127.0.0.1:81') 
 }) 
 
第五种:多次调用中间件
 
 // express中间件 next 函数的作用 
 // next 函数是实现多个中间件连续调用的关键,它表示把流转关系转交给下一个中间件或路由。 
  
 const express = require('express'); 
 const app = express(); 
  
   
  
 // 这是定义全局中间件的简单形式 
 app.use((req,res,next)=>{ 
 	console.log('调用了第1个全局中间件') 
 	next(); 
 }) 
 app.use((req,res,next)=>{ 
 	console.log('调用了第2个全局中间件') 
 	next(); 
 }) 
  
 app.get('/',(req,res)=>{ 
 	console.log('调用了 / 这个路由'); 
 	res.send('Home Page.'); 
 }) 
 app.get('/user',(req,res)=>{ 
 	console.log('调用了 /user 这个路由'); 
 	res.send('user page.'); 
 }) 
  
 //3 启动 web 服务器 
 app.listen(81,()=>{ 
 	console.log('express server runing at http://127.0.0.1:81') 
 })