什么是路由
- 在网络通信中,“路由”是一个网络层的术语。它是指从某一网络设备出发去往某个目的地的路径
如图:有一段消息要从A到B,找到A到B的路径这个过程就是路由活动
前端渲染和后端渲染
后端渲染
-
早期的网站开发整个HTML页面是由服务器来渲染的
服务器直接生产渲染好对应的HTML页面,返回客户端进行展示
-
但是,一个网站,那么多页面服务器如何处理?
- 一个页面有自己对应的网址,也就是URL。 - URL会发送到服务器,服务器会通过正则对该URL进行匹配,并且最后交给一个Controller处理 - Controller进行各种处理,最终生成HTML或者数据,返回给前端 - 这就完成了一个IO操作
-
上面的操作被称为后端路由
- 当我们页面中需要请求不同的路径内容时,交给服务器来进行处理,服务器渲染好整个页面,并且将页面返回给客户端 - 这种情况下渲染好的页面,不需要单独加载任何的js和css,可以直接交给浏览器展示,这样也有利于SEO优化
-
后端路由的缺点:
- 一种情况是整个页面的模块由后端人员编写和维护 - 另一种情况是前端开发人员如果要开发页面,需要通过PHP和JAVA等语言来编写页面代码,这需要开发人员前后端都懂 - 而且通常情况下HTML代码和数据以及对应的逻辑会混在一起,编写和维护都是非常麻烦的
后端路由总结:后端处理URL和页面之间的映射关系
前端渲染
-
前后端分离阶段
- 随着Ajax的出现,有了前后端分离的开发模式 - 后端只提供Api来返回数据,前端通过Ajax获取数据,并且可以通过JavaScript将数据渲染到页面中 - 这样做最大的优点就是前后端责任清晰,后端专注于数据上,前端专注于交互和可视化上 - 并且当移动端(iOS/Andriod)出现后,后端不需要进行任何处理,依然使用之前的一套Api即可 - 目前后端网站依然采用这种模式开发
-
单页面富应用阶段
- 其实SPA(single page web application)最主要的特点就是在前后盾分离的基础上加了一层前端路由 - 也就是前端来维护一套路由规则 - 改变URL,但是页面不进行整体的刷新
前端路由总结:前端处理URL和页面之间的映射关系