XMLHttpRequest对象的一些典型方法

来源:互联网 发布:动态血压仪数据怎么看 编辑:程序博客网 时间:2024/06/09 17:23

表2-1 标准XMLHttpRequest操作
方 法     描 述

abort()     停止当前请求

getAllResponseHeaders()   把HTTP请求的所有响应首部作为键/值对返回

getResponseHeader("header")  返回指定首部的串值

open("method", "url")   建立对服务器的调用。method参数可以是GET
     、POST或PUT。url参数可以是相对URL或绝对
     URL。这个方法还包括3个可选的参数

send(content)    向服务器发送请求

setRequestHeader("header", "value") 把指定首部设置为所提供的值。在设置任何首
     部之前必须先调用open()


下面来更详细地讨论这些方法。
void open(string method, string url, boolean asynch, string username, string password):这个方法会建立对服务器的调用。这是初始化一个请求的纯脚本方法。它有两个必要的参数,还有3个可选参数。要提供调用的特定方法(GET、POST或PUT),还要提供所调用资源的URL。另外还可以传递一个Boolean值,指示这个调用是异步的还是同步的。默认值为true,表示请求本质上是异步的。如果这个参数为false,处理就会等待,直到从服务器返回响应为止。由于异步调用是使用Ajax的主要优势之一,所以倘若将这个参数设置为false,从某种程度上讲与使用XMLHttpRequest对象的初衷不太相符。不过,前面已经说过,在某些情况下这个参数设置为false也是有用的,比如在持久存储页面之前可以先验证用户的输入。最后两个参数不说自明,允许你指定一个特定的用户名和密码。
void send(content):这个方法具体向服务器发出请求。如果请求声明为异步的,这个方法就会立即返回,否则它会等待直到接收到响应为止。可选参数可以是DOM对象的实例、输入流,或者串。传入这个方法的内容会作为请求体的一部分发送。
void setRequestHeader(string header, string value):这个方法为HTTP请求中一个给定的首部设置值。它有两个参数,第一个串表示要设置的首部,第二个串表示要在首部中放置的值。需要说明,这个方法必须在调用open()之后才能调用。
在所有这些方法中,最有可能用到的就是open()和send()。XMLHttpRequest对象还有许多属性,在设计Ajax交互时这些属性非常有用。
void abort():顾名思义,这个方法就是要停止请求。
string getAllResponseHeaders():这个方法的核心功能对Web应用开发人员应该很熟悉了,它返回一个串,其中包含HTTP请求的所有响应首部,首部包括Content-
Length、Date和URI。
string getResponseHeader(string header):这个方法与getAllResponseHeaders()是对应的,不过它有一个参数表示你希望得到的指定首部值,并且把这个值作为串返回。
除了这些标准方法,XMLHttpRequest对象还提供了许多属性,如表2-2所示。处理XMLHttpRequest时可以大量使用这些属性。
表2-2 标准XMLHttpRequest属性

属 性      描 述

onreadystatechange    每个状态改变时都会触发这
      个事件处理器,通常会调用
      一个JavaScript函数

readyState     请求的状态。有5个可取值:0 = 未
      初始化,1 = 正在加载,2 = 已加载
      ,3 = 交互中,4 = 完成

responseText     服务器的响应,表示为一个串

responseXML     服务器的响应,表示为XML。这个对
      象可以解析为一个DOM对象

status      服务器的HTTP状态码(200对应OK,
      404对应Not Found(未找到),等等
      )

statusText     HTTP状态码的相应文本(OK或Not
      Found(未找到)等等) 

原创粉丝点击