后端渲染和后端路由、前后端分离阶段、单页面富应用阶段和前端路由

一. 后端渲染和后端路由

后端渲染和后端路由、前后端分离阶段、单页面富应用阶段和前端路由

后端渲染

以前网页开发都是通过JSP/PHP等进行开发的。JSP即java serve page,用Java写出一个网页,然后把它传到浏览器,让浏览器直接展示这个网页。

当时其实是这样做的。

  1. 现在有一个浏览器想请求网页,浏览器可能从这个网站中请求很多个网页。
  2. 浏览器将请求的页面的URL发到服务器里面,服务器解析请求的网页。
  3. 服务器在后台通过JSP直接将网页写好,网页中包含HTML+CSS+JAVA。Java代码的作用是从数据库中读取数据,并且将它动态的放在页面中。
  4. 在服务器中通过Java已经完全将所有的东西渲染好了,服务器端的东西已经是最终的网页了,然后直接将最终的网页传给浏览器,传给浏览器的只有HTML和css代码。
  5. 这就叫做后端渲染,也叫服务端渲染。传到浏览器的就是已经渲染好的页面。

后端路由

浏览器可能从网站中请求很多个页面,每一个请求的URL和页面之间形成一种映射关系。

后端处理URL和页面之间映射关系的路由称作后端路由

后端路由缺点:
html代码和数据以及逻辑会混在一起,编写和维护都很麻烦

二. 前后端分离阶段

后端渲染和后端路由、前后端分离阶段、单页面富应用阶段和前端路由

  1. 随着Ajax的出现,有了前后端分离的开发模式。
  2. 后端只提供API来返回数据,前端通过Ajax获取数据,并且通过JavaScript将数据渲染到页面上。
  3. 前后端分离的最大优点是:前后端责任清晰,后端专注与数据,前端专注于交互和可视化。
  4. 并且当移动端出现后,后端不需要进行任何处理,依然使用之前的一套API即可。
    目前很多的网站依然采用的是这种模式开发

三. 单页面富应用阶段

后端渲染和后端路由、前后端分离阶段、单页面富应用阶段和前端路由
单页面富应用简称为SPA(simple page web application)
SPA最主要的特点就是在前后端分离的基础上加了一层前端路由

  1. 一般情况下,整个网站只有一个html页面
  2. 在前后端分离阶段,静态资源服务器中放了好几套html+css+js,对应各个页面。但是在SPA里面,只有一个html+css+js.
  3. 当你输入网站,它将全部资源都加载到浏览器中。
  4. 比如你想进入你页面的首页,通过首页的url从浏览器获取的全部资源中抽取出需要的组件

前端路由

前端路由:url和组件之间的一种映射关系
前端路由的核心:改变URL,但页面不进行整体的刷新