Node.js 搭建一个简易的 BFF,支持静态资源服务,SSR,RPC调用后端,Api请求

  1. 使用 Node.js 搭建一个可用的 BFF
  2. Node.js 支持 SSR 和 提供接口服务
  3. RPC 调用的模式

image.png
BFF 将请求报文解析后根据路由匹配分发到不同模块进行处理

  1. ├── SSR 服务端渲染
  2. ├── client RPC 客户端
  3. ├── protocols RPC 协议内容
  4. ├── schema graphql 接口模型
  5. ├── server Node.js 模拟的后端
  6. ├── static 静态资源
  7. └── views 视图

https://github.com/MRLCR/freedom-study-node/tree/master/demo/BFF
玩转 bff架构
https://blog.csdn.net/xgangzai/article/details/119792195

API

先去 schema 中寻找匹配的模型,然后根据模型解析到请求信息后,调用 client 模块建立 socket 链接;
完成 RPC 调用后,将获得的数据原路返回

静态资源

从设置的静态资源文件夹下找到同名的资源后,读取并返回给浏览器

SSR

需要 SSR 的文档,分别从 views 中找到对应的模板,从 client 的 RPC 调用找到相应数据后;
在模板引擎的作用下组成完整的 html 文档,返回给浏览器