个人终端设备和浏览器性能的不断提升, Web 开发者尝试将渲染以及路由工作交给客户端,服务器端 RESTFul API 只提供渲染 HTML 所需的 JSON 数据。这种形态的 Web 应用被称为 SPA ( Single Page Application ,单页应用)。 SPA 有以下优点。
减轻了服务器的资源消耗。
与 HTML 文档比起来, JSON 数据的体积小很多,减少了网络请求的时间消耗。
页面路由控制更快速灵活。
可以离线使用。
同时 SPA 也带来了新问题。首先,浏览器需要等待 JavaScript 文件加载完成之后才可以渲染后续的 HTML 文档内容,用户在等待的过程中页面是空白的,这就是我们在进行 Web 产品性能评估时经常谈到的“白屏时间”;其次,由于客户端和服务器端编程语言不同,可能会存在一些诸如数据格式的差异,甚至路由逻辑冲突,比如 vue - router history 模式的路由,这些问题增加了维护难度;最后, SPA 不利于常规的 SEO (搜索引擎优化)爬虫(之所以说常规是因为 Google 已经针对 SPA 进行了 SEO 优化,但是目前国内的搜索引擎对 SPA 的支持并不理想)。
留言与评论(共有 0 条评论) “” |