HTML Over the wire 办法包含相似于多页面应用程序 (MPA) 的服务器端渲染 (SSR)。然而,在初始申请之后,浏览器仅通过 AJAX 异步检索 HTML 片段,因而整个页面不再从新渲染。与单页应用程序 (SPA) 不同,服务器还解决应用程序的逻辑和状态:
[图片]
单页面利用(Single Page Application,简称 SPA)和多页面利用(Multi Page Application,简称 MPA)是两种不同的 Web 利用构建形式。它们在页面加载、数据处理、用户体验等方面有显著的差别。上面是它们之间的次要区别:
-
页面加载和渲染:
- 单页面利用:在 SPA 中,所有的页面资源(如 HTML、CSS、JavaScript)仅在初始加载时申请一次。当用户在利用中导航时,不会从新加载整个页面,而是通过动静更新 DOM 元素来显示新的内容。这样能够缩小页面加载工夫,进步用户体验。
- 多页面利用:在 MPA 中,每次用户导航到新页面时,浏览器都须要从新申请页面资源并从新渲染整个页面。这可能导致页面加载速度较慢,用户体验不如 SPA 晦涩。
-
数据处理:
- 单页面利用:SPA 通常应用 Ajax 或 Fetch API 与服务器进行数据交互,实现异步申请和页面部分更新。这使得用户在与利用交互时无需刷新页面,能够实时看到数据更新。
- 多页面利用:MPA 通常应用表单提交和页面刷新的形式与服务器进行数据交互。每次数据更新都须要从新加载整个页面,用户体验绝对较差。
-
开发复杂度和保护:
- 单页面利用:SPA 的开发和保护可能比较复杂,因为须要解决前端路由、状态治理、模块化等问题。但随着古代前端框架(如 React、Vue、Angular)的倒退,这些问题失去了较好的解决。
- 多页面利用:MPA 的开发和保护绝对简略,因为每个页面都是独立的,不须要解决前端路由和状态治理等问题。但随着利用规模的扩充,页面之间的反复代码和资源可能会减少,使得保护变得艰难。
-
搜索引擎优化(SEO):
- 单页面利用:SPA 的 SEO 优化绝对艰难,因为搜索引擎爬虫可能无奈正确解析和渲染 JavaScript 生成的内容。但能够通过服务端渲染(SSR)或预渲染(Prerendering)等技术来改善 SEO。
- 多页面利用:MPA 的 SEO 优化绝对容易,因为每个页面都有独立的 URL 和动态内容,搜索引擎爬虫能够间接抓取和剖析。
Gmail、Google Maps、Facebook 等是典型的单页面利用代表。这些利用在用户与之交互时,页面内容会动静更新,无需刷新整个页面。