Web 开发模式
# 目前主流的Web 开发模式 两种
一、基于 服务器端渲染 的传统 Web开发模式
二、基于 前后端分离 的新型 Web开发模式# 服务端渲染的优缺点# 优点:1. 前端耗时少因为服务端负责动态生成 HTML内容,浏览器(包括手机端)只需要直接渲染页面即可。尤其是移动端,更省电2. 有利于SEO因为服务端响应是完成的 HTML 内容, 所以爬虫更容易爬取获得信息,更有利于 SEO# 缺点:1. 占用服务端资源即服务端完成 HTML页面内容的拼接,如果请求较多(特别是电商这种互联网项目),会对服务器造成一定的访问压力2. 不利于前后端分离,开发效率低 使用服务端渲染,则 无法进行分工合作,尤其对于 前端复杂度高 的项目,不利于项目高效开发# 前后端分离的 web 开发模式前后端分离的开发模式,依赖于Ajax(是依赖XHR) 技术的广泛应用。简单来说,后端只负责提供API接口,前端使用Ajax调用接口的开发模式
# 前后端分离的优缺点# 优点1. 开发体验好 前端专注UI页面的开发,后端专注api的开发,且前端有更多的选择性(比如 VUE、React、Angular)2. 用户体验好 Ajax技术的广泛应用,极大的提高了用户的体验,可以轻松实现页面的局部刷新3. 减轻服务端的渲染压力 因为页面最终是在每个用户的浏览器中生成的。# 缺点1. 不利于SEO 因为 完整的 HTML页面需要在客户端动态拼接生成。
# 服务端渲染的 Web 开发模式 服务器发送给客户端的HTML页面,是在服务器通过字符串的拼接,动态生成的 ,因此,客户端不需要使用Ajax这样的技术额外请求页面的数据app.get('/index.html',(req,res)=>{const user = { name:'zen',age:20}const html = `<h1>姓名:${use.name},年龄:${use.age}</>`res.send(html)})
不同开发模式的身份认证
# 服务端渲染Web开发模式 推荐 Session认证机制
# 前后端分离Web开发模式 推荐 JWT 认证机制