AJAX

94 阅读1分钟

AJAX的基本概念

AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量的数据交换,AJAX可以使网页实现异步更新。这意味着可在不重新加载整个网页的情况下,对网页的某个部分进行更新。

AJAX的优点
  1. 可以无需刷新页面而与服务器端进行通信
  2. 允许根据用户事件来更新部分页面内容
AJAX的缺点
  1. 没有浏览历史,不能回退
  2. 存在跨域问题(同源)
  3. SEO(搜索引擎优化)不友好

基本工作原理

网页发起请求,会将请求发送给浏览器内核中的Ajax引擎,Ajax引擎会提交请求到服务端,在这段时间里,客户端可以进行任意操作,直到服务器端将数据返回到Ajax引擎后,会触发设置的事件,从而执行自定义的js逻辑代码完成某种页面的功能。

  1. readyState: 每当 readyState 改变时,就会触发 onreadystatechange 事件存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。 0: 请求未初始化 1: 服务器连接已建立 2: 请求已接收 3: 请求处理中 4: 请求已完成,且响应已就绪

  2. responseText 服务器返回的响应文本

  3. responseXml 服务器返回的响应xml

  4. status 服务器的http状态码 200: "OK" 404: 未找到页面

  5. statusText 服务器的http状态原因文本

  6. onreadystatechange(){} 事件被触发 5 次(0 - 4),对应着 readyState 的每个变化