3. 后端服务器接收到请求,然后根据请求信息,从数据库或者其他地方获取相应的数据,返回给node层
点击右上方红色按钮关注“小郑搞码事”,每天都能学到知识,搞懂一个问题!
还是那句话,前端页面渲染就四种方式。只要愿意学,花点时间从理论到实践搞一遍,很容易就学会了。往后工作中天天用,进一步深入研究。
四种方式如下图所示:
前两篇我以将后端模板渲染和客户端渲染两种渲染方式的实现思路和优缺点都说过了。
今天来聊一下第三种渲染方式—node中间层。都是很好理解很容易搞懂的玩意,没接触过的同学,不要想太复杂。
三. Node中间层
上一篇我讲的客户端渲染,相对于上上篇讲的后端模板渲染来说,它的优点是前后端分离开发,后台只负责提供数据,前端能够尽量发挥自己端的构建生态优势。而缺点是由于首屏数据需要等到JS加载完成才能显示,服务端返回的是空DOM结构,所以首屏等待时间长,体验不好。
那么今天我要说的第三种页面渲染方式,即能够保留前后端分离开发的优势,又能够实现首屏数据的快速响应。
通过一张图来看一下整体思路。
为了大家更好的理解,下面,我对着这张图将整个过程也解释一遍。
1. 前端发出一个请求URL
2. node层接收到这个请求,然后根据请求信息,向后端服务器发起请求,获取数据
3. 后端服务器接收到请求,然后根据请求信息,从数据库或者其他地方获取相应的数据,返回给node层
4. node层根据这些数据渲染好首屏HTML
5. node层将HTML文本返回给前端
传统的B/S架构是:浏览器-后端服务器-浏览器
加入node层的架构是:浏览器-node-后端服务器-node-浏览器
其中node层也是由前端开发来掌控的。所以后端依然只负责向前端提供数据。
由此可见,这种方式的优点就是:
第一. 保留了后端模板渲染(node层实现),首屏快速响应,SEO友好
第二. 保留前后端分离开发模式
同时,不足的地方是:
第一. 多了一个中间层,应用的性能有所降低
第二. 增加了架构的复杂度,不稳定性,降低应用的安全性
第三. 对开发人员要求会高很多
不过不用过于担心,这些缺点,在第四种渲染方式上会得到缓解。等我下篇更新。
领取专属 10元无门槛券
私享最新 技术干货