单页面应用程序与Web应用程序的区别。

时间:2016-06-16 20:41:07

标签: asp.net .net web

单页面应用程序和Web应用程序之间有什么区别。有什么优点和缺点。何时应使用SPA以及何时应使用Web应用程序

2 个答案:

答案 0 :(得分:1)

来自:亚当·弗里曼(Adam Freeman)书“ Pro Angular 9”。 :

很长一段时间以来,Web应用程序的开发都遵循了
往返模式)。

  • 浏览器服务器请求初始的 HTML文档
  • 用户交互(例如单击链接或提交表单)会导致浏览器请求并接收全新的 HTML文档
  • 浏览器本质上是用于HTML内容的呈现引擎,并且所有应用程序逻辑和数据都驻留在服务器上
  • 浏览器发出一系列无状态HTTP请求服务器通过动态生成 HTML文档来处理< / li>

往返应用程序仍是当前许多Web开发工具,尤其是因为它们不需要浏览器就能保证获得尽可能广泛的客户支持。< br /> 但是有一些往返应用程序的缺点

  • 它们使用户等待下一个HTML文档的请求并加载。
  • 它们需要大型服务器端基础架构,以处理所有请求并管理所有应用程序状态
  • 它们需要更多带宽,因为每个HTML文档都必须是独立的(导致来自服务器的每个响应中包含很多相同的内容)。

单页应用程序)采用了不同的方法。

  • 初始HTML文档发送到浏览器
  • 用户交互导致** Ajax请求将HTML的小片段或插入到现有元素集中的数据显示给用户。
  • 永远不会重新加载或替换初始HTML文档
  • 即使异步执行Ajax请求,用户仍可以继续与现有HTML进行交互,即使那只是意味着看到“数据加载”消息。**

答案 1 :(得分:0)

this answer。就开发工作而言,过度简化的比较是

多页应用

  1. HTTP请求中包含的用户操作(例如HTTP POST,HTTP GET)
  2. 处理请求,服务器以HTTP页面响应
  3. 缺点:需要许多页面才能响应每个用户操作(例如,添加项目到列表,更新表单数据),而在SPA中,数据绑定可以为您更新视图的大部分工作。其次,Web应用程序负责维护在整页请求之间丢失的状态。相比之下,当浏览器停留在同一页面上时,SPA可以在XHR之间保持其状态,而无需额外工作。

    单页面应用程序(SPA):

    1. 在客户端和服务器端配置路由
    2. 客户端和服务器上的
    3. 代码“控制器”
    4. 在客户端上初始化框架
    5. 处理JavaScript中的用户操作
    6. 处理XHR请求/响应
    7. 这些只是我在开发单页和多页应用时注意到的典型步骤,并不一定或广泛代表所有情况。

      为了开发SPA,AngularJS等框架受到高度鼓励和高度评价,其优势在于构建客户端JavaScript的指导。

      多页应用程序响应整页加载的用户操作,根据定义,单页应用程序限制为1页(否则它们是多页),而是依赖XHR