千家信息网

node Express的中间件举例分析

发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,本篇内容主要讲解"node Express的中间件举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"node Express的中间件举例分析"吧!Ex
千家信息网最后更新 2025年01月18日node Express的中间件举例分析

本篇内容主要讲解"node Express的中间件举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"node Express的中间件举例分析"吧!

Express是一个简洁而灵活的Web应用程序开发框架,可以用来快速地搭建一个功能完整的Web应用程序;作为一个基于Node.js封装的上层服务框架,Express提供了更简洁的API,通过中间件路由使应用程序的组织管理更加容易。

中间件的概念

中间件,就是将请求处理函数进行模块化分解后的若干子处理函数,一些列子处理函数可以形成一个中间件堆栈;

中间件,是在应用程序的请求-响应周期中能够访问请求对象req、响应对象res和next()函数的函数,next()函数主要负责将控制权交给下一个中间件;如果当前中间件没有终结请求,并且next()没有被调用,那么请求将被挂起,后面定义的中间件将不会被执行。、

中间件的执行顺序,严格按照注册的顺序从上到下开始匹配执行。

中间件函数,可以执行以下任务:

  • 执行任何代码

  • 对请求和响应对象进行修改

  • 终结请求-响应周期

  • 调用堆栈中下一个中间件(next)

中间件的主要用途就是处理HTTP请求,用来完成特定的任务如登录状态验证、请求日志、错误处理、Cookie等。

中间件分类

1 应用程序级中间件

使用app.use()函数将应用程序级中间件绑定到应用对象实例上

const app = express();/*表示匹配任何路由*/app.use(function(req,res,next){    console.log('请求时间:' +  Date.now());    /*表示匹配完成这个中间件就继续往下执行。*/    next()})

2 路由级中间件

路由级中间件与应用程序级中间件的工作方式相同,只是它被绑定到路由器实例上

import express from 'express';const app = express();const router = express.router();router.use(  '/user',  function (req, res, next) {    console.log(1);    next();  },  function (req, res, next) {    console.log(2);    next();  },  function (rex, res, next) {    console.log(3);    next();  });

3 错误处理中间件

错误处理中间件总是需要4个参数,必须提供4个参数来将其标识为错误处理中间件函数。即使不需要next函数,也必须指定它。否则next函数被解释为常规中间件,并且无法处理错误

app.use(function(err, req, res, next){    console.log(err.stack);    res.status(500).send(err);})

4 内置中间件

Express具有以下内置中间件:

  • express.static: 提供静态资源服务

  • express.router: 提供路由服务

5 第三方中间件

第三方中间件如body-parser、cookie-parser等

6 自定义中间件

自定义中间件被定义为一个函数,接受req,res,next参数,使用app.use()注册中间件

function log(req,res,next) {    req.requestTime = Date.now();    next()}// 注册自定义中间件app.use(log);
// 自定义可配置中间件function log(options) {    return function (req,res,next) {        // 根据options实现中间件功能        next    }}

到此,相信大家对"node Express的中间件举例分析"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

中间件 函数 处理 应用 应用程序 程序 路由 错误 对象 分析 参数 服务 简洁 任务 内容 功能 周期 堆栈 实例 就是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 青海余料套料软件开发商 数据库一直在重启 党组网络安全工作责任制落实情况 空管网络安全和信息化 档案数据库的设计可以分为 崇明区提供数据库厂家价格 汕头无限软件开发维修电话 内蒙古数据软件开发推广 湛江教育软件开发外包 北京沙暴网络技术有限公司 本地服务器搭建v2 档案软件原服务器容量410g 怎么打开数据库已有的表 小学生防范电信网络安全教育 如何搭建文件管理服务器系统 国庆应保障网络安全 网络安全税收优惠政策 昆山市网络安全监察大队大队长 db2数据库cpu使用率过高 漳州网络安全资质申请哪家好 大雅数据库查重准不准 公共区域电子屏网络安全台账 佛山熙联网络技术有限公司 深泽应用软件开发服务技术规范 试述软件开发工具的发展方向 租用服务器怎么选择合适的系统 为什么使用代理服务器 积分记录 数据库设计 静安区软件开发信息推荐 神通数据库如何激活
0