zdppy_api 中间件请求原理详解

单个中间件的逻辑

整体执行流程:

  • 1、客户端发起请求
  • 2、中间件拦截请求,在请求开始之前执行业务逻辑
  • 3、API服务接收到中间件处理之后的请求,和数据库交互,请求数据
  • 4、数据库返回数据
  • 5、API处理数据库的数据,然后给客户端
  • 6、中间件拦截API服务的响应数据,在响应抵达客户端之前添加业务逻辑
  • 7、将API服务的数据经过中间件处理之后,响应给客户端

多个中间件的执行逻辑

整体执行流程:

  • 1、客户端发起请求
  • 2、中间件拦截请求,在请求开始之前执行业务逻辑,将业务传递给下一个中间件
  • 3、下一个中间件继续,直到所有的中间件都对请求进行了处理
  • 4、API服务接收到中间件处理之后的请求,和数据库交互,请求数据
  • 5、数据库返回数据
  • 6、API处理数据库的数据,然后给客户端
  • 7、中间件拦截API服务的响应数据,将业务传递给下一个中间件
  • 8、下一个中间件继续对响应做处理,直到所有的中间件都处理完毕,再响应给客户端
  • 9、将API服务的数据经过中间件处理之后,响应给客户端

多个中间件执行图解

执行流程:

  • 中间件1处理请求,传递给中间件2
  • 中间件2处理请求,传递给中间件3
  • 中间件3处理请求,传递给API服务
  • 中间件3处理响应,传递给中间件2
  • 中间件2处理响应,传递给中间件1
  • 中间件1处理响应,传递给客户端
相关推荐
初中就开始混世的大魔王34 分钟前
7 Fast DDS-持久化服务
c++·人工智能·中间件·自动驾驶·信息与通信
半夜修仙19 小时前
RabbitMQ中如何保证消息的可靠性传输
java·分布式·中间件·rabbitmq·github·java-rabbitmq
fuquxiaoguang1 天前
中间件信创替换的政策法规依据与技术实现
中间件·政策法规·信创替换
小马爱打代码1 天前
框架 - 组件 - 中间件:生产级参数配置指引
数据库·中间件
眠りたいです2 天前
LangChainv1:agent快速上手与中间件认识
人工智能·python·中间件·langchain·langgraph
Web打印2 天前
HttpPrinter Web打印中间件 wiki.httpprinter.com 知识库内容总结
前端·中间件
我是一颗柠檬3 天前
【Java项目技术亮点】分布式锁实现与优化:从Redisson到ZooKeeper,彻底搞懂分布式锁的底层原理
java·redis·分布式·中间件·java-zookeeper
Trouvaille ~4 天前
【Redis篇】Redis 哨兵(Sentinel):高可用自动故障转移
数据库·redis·缓存·中间件·sentinel·高可用·哨兵
constCpp4 天前
深入理解内存管理
后端·中间件·架构
愚公搬代码5 天前
【愚公系列】《移动端AI应用开发》014-DeepSeek API开发与集成(处理多轮对话与动态请求)
人工智能·中间件·架构