中间件是一种独立的系统软件或服务程序, 分布式应用软件借助这种软件在不同的技术之间共享资源. 中间件位于客户机 / 服务器的操作系统之上, 管理计算机资源和网络通讯.
node 中间件:
1, 中间件就是一种功能的封装方式, 就是封装在程序中处理 http 请求的功能,
2, 中间件是在管道中执行
3, 中间件有一个 next()函数, 如果不调用 next 函数, 请求就在这个中间件中终止了,
4, 中间件和路由处理器的参数中都有回调函数, 这个函数有 2,3,4 个参数
如果有两个参数就是 req 和 res;
如果有三个参数就是 req,res 和 next
如果有四个参数就是 err,req,res,next
5, 如果不调用 next , 管道就会终止, 不会再有处理器做后续响应, 应该向客户端发送一个响应
6, 如果调用了 next, 不应该发送响应到客户端, 如果发送了, 则后面发送的响应都会被忽略
7, 中间件的第一个参数可以是路径, 如果忽略则全部都匹配
中间件:
中间件是一类连接软件组件和应用的计算机软件, 它包括一组服务. 以便于运行在一台或多台机器上的多个软件通过网络进行交互. 该技术所提供的互操作性.
推动了一致分布式体系架构的演进, 该架构通常用于支持并简化那些复杂的分布式应用程序, 它包括 web 服务器, 事务监控器和消息队列软件.
中间件 (middleware) 是基础软件的一大类, 属于可复用软件的范畴. 顾名思义, 中间件处于操作系统软件与用户的应用软件的中间.
中间件在操作系统, 网络和数据库之上, 应用软件的下层, 总的作用是为处于自己上层的应用软件提供运行与开发的环境, 帮助用户灵活, 高效地开发和集成复杂的应用软件.
在众多关于中间件的定义中, 比较普遍被接受的是 IDC 表述的: 中间件是一种独立的系统软件或服务程序, 分布式应用软件借助这种软件在不同的技术之间共享资源, 中间件位于客户机服务器的操作系统之上, 管理计算资源和网络通信.
来源: http://www.css88.com/qa/node-js/12090.html