Web 的开发模式
基于服务端渲染的开发模式
服务器发送给客户端的 HTML 页面,是在服务器通过字符串拼接,动态生成的。因此,客户端不需要使用 Ajax 这样的技术额外请求页面的数据。示例:
app.get('/index.html', (req, res) => {
const user = { name: 'zs', age: 22 }
const html = `<h1>姓名:${user.name},年龄:${user.age}</h1>`
res.send(html)
})
优点:
- 前端耗时少,服务器端负责动态生成 HTML 内容,浏览器只需要直接渲染
- 有利于 SEO,因为服务器响应的是完整的 HTML 界面内容,所以爬虫更容易获取数据信息
缺点:
- 占用服务端资源,访问过多会给服务器造成压力
- 不利于前后端分离,开发效率低
基于前后端分离的开发模式
依赖于 Ajax 技术的广泛应用。后端只负责提供 API 接口,前端使用 Ajax 调用接口的开发模式
优点:
- 开发体验好
- 用户体验好
- 减轻了服务器端的渲染压力
缺点:
- 不利于 SEO(通过 Vue、React 等框架提供的 SSR 技术解决)