1. 客户端渲染:CSR (client side render)
    在服务端放了一个html 页面,里面有
    客户端发起请求,服务端把页面(响应的是字符串)发送过去,客户端从上到下依次解析,如果在解析的过程中,发现ajax
    请求,再次像服务器发送新的请求,客户端拿到ajax 响应结果,模板引擎渲染。
    过程至少和服务端发起两次请求

  2. 服务端渲染:SSR (server side render)
    sever 端页面+数据,服务端过程:
    1.读取index.html
    2.模版进行渲染,在发送给客户端之前,在服务端已经把index.html 渲染处理了。var 渲染结果 = tempeter.render(模板字符串,{解析替换对象}) response.end(渲染结果),服务端响应的就是最总的结果
    服务端只请求一次
    多数网站既有服务端渲染又有客户端渲染

  3. 服务端渲染和客户端渲染的区别

    • 客户端渲染不利于 SEO 搜索引擎优化
    • 服务端渲染是可以被爬虫抓取到的,客户端异步渲染是很难被爬虫抓取到的
    • 所以你会发现真正的网站既不是纯异步也不是纯服务端渲染出来的
    • 而是两者结合来做的
    • 例如京东的商品列表就采用的是服务端渲染,目的了为了 SEO 搜索引擎优化
    • 而它的商品评论列表为了用户体验,而且也不需要 SEO 优化,所以采用是客户端渲染