Angular 8 - 服务器端渲染

服务器端渲染 (SSR) 是一种现代技术,可将浏览器中运行的单页应用程序 (SPA) 转换为基于服务器的应用程序。 通常,在 SPA 中,服务器返回一个简单的 index.html 文件,其中包含对基于 JavaScript 的 SPA 应用程序的引用。 SPA 应用程序从那里接管,配置整个应用程序,处理请求,然后发送最终响应。

但在 SSR 支持的应用程序中,服务器也会执行所有必要的配置,然后将最终响应发送到浏览器。 浏览器呈现响应并启动 SPA 应用程序。 SPA 应用程序从那里接管,进一步的请求将转移到 SPA 应用程序。 SPA和SSR的流程如下图所示。

SSR

将 SPA 应用程序转换为 SSR 具有一定的优势,如下所示 −

  • 快速 − 第一个请求相对较快。 SPA 的主要缺点之一是初始渲染速度慢。 应用程序渲染完成后,SPA 应用程序的速度相当快。 SSR 修复了初始渲染问题。

  • SEO 友好 − 使网站对 SEO 友好。 SPA的另一个主要缺点是无法被网络爬虫以SEO为目的进行爬行。 SSR 修复了该问题。

Angular 通用

要在 Angular 中启用 SSR,Angular 应该能够在服务器中渲染。 为了实现这一目标,Angular 提供了一种称为 Angular Universal 的特殊技术。 这是一项相当新的技术,并且正在不断发展。 Angular Universal 知道如何在服务器中渲染 Angular 应用程序。 我们可以将应用程序升级到 Angular Universal 以支持 SSR。