解决前后端跨域时,常说的 node 中间件是什么?

作者站长头像
站长
· 阅读数 5

个人背景: 一个前端新人

场景:在解决跨域问题的时候,后端说等我写一个 node 中间件就好

问题: 后端所指的中间件是什么概念?是一段具体的代码?我该如何正确理解这个概念呢?

回复
1个回答
avatar
test
2024-06-25

你可以把中间件理解为一种扩展方式,通用库/框架/运行时在设计时,为了增加一些关键流程的可扩展性,都会采用比如像切面编程等思想来实现我们常说的中间件,插件等机制

就用你问题场景中的 http 请求与响应举例,通常业务开发都不会直接使用node提供的 http 模块,因为要处理的细节还是比较多,通常会选用一个对 http 封装简化后的上层库

上层库肯定只负责提供一些更简洁的方式来给开发者使用,不会涉及任何业务逻辑或者特殊处理,那么使用者想在一些关键阶段做一些业务上的处理该怎么办呢,这里就回到主题了,中间件的作用就是解决这种场景下的问题

由此也可以知道,中间件肯定是一段具体的代码,并且是按照对应的库的要求,编写的具有一定格式的代码。

补充一点,很多库为了减轻核心模块的代码体积,也会把部分通用功能以中间件的方式实现,由使用者来选择使用

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容