什么是服务端渲染?前后端分离的优点和缺点?

一.概念

服务端渲染简单点就是服务端直接返回给客户端一个完整的页面,也就是一个完整的html页面,这个页面上已经有数据了。说到这里你可能会觉得后端怎么写页面啊,而且服务端返回页面不是加载更慢吗?错了,因为我们现在做的什么vue、react都是前后端分离的项目,所以你会觉得慢,但是在这些框架没出来之前我们做的都是前后端不分离的项目,比如Java里面有个jsp就可以写前端页面等等。接下来我具体说一下服务端渲染的过程你就明白喽。

  • 当你在地址栏输入地址以后
  • 服务器会找到你需要的 html 文件, 但是先不给你
  • 然后去找到当前这个文件内所需要的数据内容
  • 然后, 把数据内容组装成一个 html 结构插入到页面内
  • 然后把插入好数据的页面直接返回给你

二.前后端分离和服务端渲染有啥区别?

  • 数据渲染

前后端分离 : 后端把数据返回给客户端, 在客户端运算渲染出来

服务端渲染 : 后端把数据直接渲染在了 html 文件上, 把渲染好的文件给你

  • 源文件

前后端分离 : 你得到的 html 源文件是没有对应的渲染内容的, 需要依靠执行 js 渲染

服务端渲染 : 你得到的 html 源文件就是所有数据都书写好的文件

  • 页面加载速度

前后端分离 : 得到 html 页面以后, 还需要等待 ajax 请求数据在进行渲染

服务端渲染 : 得到的 html 就是完整的最终页面, 直接展示即可

  • SEO(搜索引擎优化)

前后端分离 : 因为页面没有结构, 所以不利于搜索引擎抓取

服务端渲染 : 得到的 html 就是完整内容, 搜索引擎可以抓取到所有内容

三.前后端分离的优点和缺点

  • 优点
  1. 开发效率提升了,两个人写怎么也比一个人快。
  2. 用户体验好。
  3. 代码利于维护
  4. 减轻了后端服务器的请求压力。
  • 缺点
  1. 首屏加载时间较长
  2. 不利于seo优化
  3. 兼容性较差,版本过低的浏览器不支持
相关推荐
陈随易6 小时前
农村程序员聊五险一金
前端·后端·程序员
恋猫de小郭6 小时前
Swift 6.3 正式发布支持 Android ,它能在跨平台发挥什么优势?
android·前端·flutter
xujing_066 小时前
跑马灯组件vue3+es6
前端·javascript·es6
小小善后师7 小时前
告别周报烦恼:我用 200 行代码打造了一个 AI 工时助手
前端
Mahut7 小时前
我们是怎么用 TanStack 全家桶的
前端·javascript·架构
FreeBuf_7 小时前
Claude浏览器扩展漏洞允许通过任意网站实现零点击XSS提示注入
前端·网络·xss
AlunYegeer7 小时前
【JAVA】网关的管理原理和微服务的Interceptor区分
java·服务器·前端
sensen_kiss7 小时前
CAN302 电子商务技术 Pt.2 深入了解HTML和CSS
前端·css·学习·html
说实话起个名字真难啊7 小时前
前端JS审计:渗透测试的“破局之钥”
开发语言·前端·javascript·测试工具
吴声子夜歌7 小时前
TypeScript——编译器和编译选项
前端·javascript·typescript