后端渲染,前端渲染
1、后端渲染
-
在早期开发网站是没有前后端概念的,一般的网页(网页有html+css组成)是通过后端渲染的,像jsp,asp,php等等,拿jsp来说
-
jsp(java server page)在渲染时在页面里面通过java代码从数据库取出数据动态放到页面中,这是在服务器端已经渲染完成的,当用户请求页面的时候,服务器端发给客户端的是一张html+css页面。
-
路由,简单来说就是能通过一个简单的东西找到对应另一个东西。
-
后端路由,当客户端请求的时候会有请求url,后端路由根据url通过servlet找到对应的资源,将页面需要的数据渲染到html,完成后发给客户端展示
2、前端渲染
-
后来出现了ajax技术,后端只通过api接口提供数据,不提供页面
-
客户端请求静态服务器请求获取html+css+js,请求过来以后在客户端浏览器中渲染,如果js中有ajax则会请求api接口,得到数据后客户端执行js代码操作展示数据
-
这个时候服务器可能是有两个的,一个是静态资源服务器,一个是后端只提供数据的服务器
3、单页面复应用(SPA)
-
整个网页只有一个html页面,在静态资源服务器中只有一套html+css+js
-
客户端发起请求后,把所有的html+css+js请求下来,客户端渲染后,也是通过比如ajax获取后端数据进行渲染
-
前端路由,比如点击不同按钮在同一张网页显示不同页面(不刷新),前端路由会通过按钮的url请求页面js渲染到指定的位置。在Vue中是一个组件
-
vue-router点击按钮,js做出反应,路由根据url找到对应的vue组件显示到客户端