每页单服务器请求与SPA应用程序

时间:2014-11-26 14:06:19

标签: angularjs httprequest single-page-application

我有想法使用angularJS制作SPA应用程序,然后在需要时将AJAX更新发送到服务器。

我最初的想法是让客户端应用程序飞起来,但如果我必须对服务器进行AJAX往返,我认为时间与请求单个网页的时间大致相同。

请求页面只包含更多字节的数据,与我在本文中请求20个资源不同:https://community.compuwareapm.com/community/display/PUB/Best+Practices+on+Network+Requests+and+Roundtrips

我会根据请求请求页面或资源。

所以最后即使我使用angularJS创建我的客户端应用程序作为SPA,这些请求(必须是同步的并且在他们不返回时显示请等待的消息,因为我没有'我希望用户在确保他的请求通过验证并正确处理之前采取更多操作)需要一些时间并让用户等待,几乎与请求整页一样。

我认为SPA页面非常有用,如果我在我的应用程序上有一个向导,有多个页面/步骤,最后将向导的结果提交给服务器,我不会这样做。

还发现这篇文章: https://help.optimizely.com/hc/en-us/articles/203326524-AngularJS-Backbone-js-and-other-Single-Page-Applications

  

单页应用程序的一大优势是它们减少了   数据传输。因此,通常在初始加载后的页面   可以更快地显示,看起来更具互动性。

但我不相信这最后的引用是真的。

我是对的,还是有一种方式我没有看到构建一个看起来像是在本地执行的应用程序?

我知道男人们会怎么开始说#34;取决于你想要什么",但是让我们关注这个没有向导的情况。

2 个答案:

答案 0 :(得分:0)

你所说的是对的。但是你采用的大多数框架(Angular,BackBone)都会在浏览器上缓存html模板,因此与普通应用程序相比,渲染速度非常快。传统的应用程序必须从服务器获取每个请求的html,这是一个非常耗时的。

希望这可以帮助你!!!

答案 1 :(得分:0)

如果您希望针对每个页面请求执行同步服务器端验证步骤,那么使用AngularJS可能没有什么大的优势。

如果您要求页面然后在加载后强制操作该页面的内容,您可能需要考虑AngularJS。一个很好的例子是请求一个显示项目列表的页面。现在假设我们要搜索该列表或以不同方式对其进行排序。而不是使用AJAX来调用服务器来过滤列表然后重新呈现它,用户AngularJS可以更快地过滤和重新呈现列表而不向服务器发出任何进一步的请求。