什么是 XMLHttpRequest 对象?
详细属性与方法:
XMLHttpRequest 对象提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求的能力。XMLHttpRequest 可以同步或异步地返回 Web 服务器的响应,并且能够以文本或者一个 DOM 文档的形式返回内容。
XMLHttpRequest 对象用于在后台与服务器交换数据。
XMLHttpRequest 对象是开发者的梦想,因为您能够:
- 在不重新加载页面的情况下更新网页
- 在页面已加载后从服务器请求数据
- 在页面已加载后从服务器接收数据
- 在后台向服务器发送数据
所有现代的浏览器都支持 XMLHttpRequest 对象。
open()
初始化 HTTP 请求参数,例如 URL 和 HTTP 方法,但是并不发送请求。
open(method, url, async, username, password) //async是ture就是异步,false是同步
send()
发送 HTTP 请求,使用传递给 open() 方法的参数,以及传递给该方法的可选请求体。
send(body) //get方法没有body,post等方法有body
属性:onreadystatechange
每次 readyState 属性改变的时候调用的事件句柄函数。
属性:responseXML
对请求的响应,解析为 XML 并作为 返回。XML DOM。
在下面的例子中,我们使用XML DOM引用从 <to> 元素中获取文本:
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue
- xmlDoc -由解析器创建的 XML 文档
- getElementsByTagName("to")[0] - 第一个 <to> 元素
- childNodes[0] - <to> 元素的第一个子元素(文本节点)
- nodeValue - 节点的值(文本本身)
下面是个实例(在没有重新加载网页的情况下通过请求更新了网页的内容):
Using the HttpRequest Object
Status:
Status text:
Response: