AJAX

248 阅读1分钟

AJAX 如何工作

  1. 浏览器网页中发生一个事件(页面加载,按钮点击)
  2. 由javaScript创建XMLHttpRequest对象new XMLHttpRequest()
  3. XMLHttpRequest对象向web服务器发送请求
  4. 服务器处理该请求
  5. 服务器将响应得数据或者信息发送回网页
  6. 由JavaScript读取响应
  7. 由javaScript执行争取得动作(例如更新页面等)

ajax.gif

AJAX - XMLHttpRequest 对象

创建XMLHttpRequest对象

var xhhtp;
if (window.XMLHttpRequest) {
    xhttp = new XMLHttpRequest();
} else {
    xhttp = new ActiveXobject('Microsft.XMLHTTP');
}

跨域访问

出于安全原因,现代浏览器不允许跨域访问。
这意味着尝试加载的网页和 XML 文件都必须位于相同服务器上。

XMLHttpRequest 对象方法

方法描述
new XMLHttpRequest()创建新的XMLHttpRequest()对象
abort()取消当前请求
getAllResponseHeaderts()返回头部信息
getResponseHeader()返回特定得头部信息
open(method,url,async,user,psw)规定请求:method: 请求类型GET或POST, url: 接口地址或文件位置,async: true (异步)或false(同步), user: 可选得用户名, psw: 可选得密码
send()将请求发送到服务器,用于GET请求
send(string)将请求发送到服务器,用于POST请求
setRequestHeader()向要发送得报头添加标签/键值对

XMLHttpRequest 对象属性

属性描述
onreadstatechange定义readyState属性发生变化时被调用得函数
readyState保存XMLHttpRequest的状态=》 0:请求未初始化,1:服务器连接已建立,2:请求已收到,3:正在处理请求, 4: 请求已完成且响应已就绪
responseText以字符串响应数据
responseXML以XML数据返回响应数据
status返回请求的状态号:200:'OK', 403: 禁止访问,404:没有发现
statusText返回状态文本