AJAX基础

简介:

AJAX的全称是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

AJAX不是一种新的编程语言,而是一种用于创建更好更快,以及交互性更强的web应用程序的技术。

AJAX的实际意义是:不发生页面跳转、异步载入内容并改写页面内容的技术。

JavaScript、XML、HTML与 CSS 在 AJAX中使用的 Web 标准已被良好定义,并被所有的主流浏览器支持。AJAX应用程序独立于浏览器和平台。

AJAX是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新;而传统的网页(不使用AJAX)如果需要更新内容,必须重载整个网页面。

AJAX的优点:

  1. 最大的一点是页面无刷新,用户的体验非常好。
  2. 使用异步方式与服务器通信,具有更加迅速的响应能力。
  3. 可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。
  4. 基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。
  5. AJAX可使因特网应用程序更小、更快,更友好。

AJAX的缺点:

  1. AJAX不支持浏览器back按钮。
  2. 安全问题,AJAX暴露了与服务器交互的细节。
  3. 对搜索引擎的支持比较弱。
  4. 破坏了程序的异常机制。
  5. 不容易调试。

同步方式与异步方式的区别:

1、同步方式发送请求

发送一个请求,需要等待响应返回,然后才能够发送下一个请求,如果该请求没有响应,不能发送下一个请求,客户端会处于一直等待过程中。

同步请求:客户端提交请求>等待服务器处理>处理完毕返回,这个期间客户端浏览器不能干任何事。

2、异步方式发送请求

发送一个请求,不需要等待响应返回,随时可以再发送下一个请求,即不需要等待。

异步: 客户端请求通过事件触发>服务器处理(此时浏览器仍然可以作其他事情)->服务器处理完毕,异步的给予浏览器响应。

AJAX原理分析

1、AJAX引擎会在不刷新浏览器地址栏的情况下,发送异步请求:

  1. 使用JavaScript获得浏览器内置的AJAX引擎(XMLHttpRequest对象)
  2. 使用js确定请求路径和请求参数
  3. AJAX引擎对象根据请求路径和请求参数进行发送请求

2、服务器接收到ajax引擎的请求进行处理:

  1. 服务器获得请求参数数据
  2. 服务器处理请求业务(调用业务层代码)
  3. 服务器响应数据给ajax引擎

3、AJAX引擎获得服务器响应的数据,通过执行JavaScript的回调函数将数据更新到浏览器页面具体位置。

  1. 通过设置给AJAX引擎的回调函数获得服务器响应的数据
  2. 使用JavaScript在指定的位置,显示响应数据,从而局部修改页面的数据,达到局部刷新目的。

你可能感兴趣的:(#,AJAX)