XMLHttpRequest的一些常见属性

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

XMLHttpRequest的一些常见属性
XMLHttpRequest的一些常见属性
1、onreadystatechange
每个状态改变时都会处发这个事件处理器,指定当readyState属性改变时的事件处理句柄,通常会调用一个javascript函数。

如xmlHttp.onreadystatechange=callback;function callback(){...}
2、readyState
返回请求状态。

有5个可取值:
0(未初始化)对象已建立,但尚未初始化,即尚未调用open方法创建http请求。

1(初始化)对象已建立,但未调用send方法发送http请求。

2(发送数据)send方法已经被调用,但是当前的状态和http头求和。

3(数据传送中)已经接收部分数据,因为响应及http头不全,这时通过response系列方法获取部分数据可能会出现错误。

4(传送完成)数据传送完毕,此时通过response系列方法可以获取完整的回应数据。

如function callback(){if(xmlHttp.readySatate==4) window.alert("完成");}
3、responseBody
将服务器的响应信息正文以unsigned byte数据形式返回,unsigned byte表示直接从服务器返回的未经解码的二进制数据。

4、responseStream
以Ado Stream形式返回服务器的响应信息。

5、responseText
以字符串的形式返回服务器的响应信息。

6、responseXML
将服务器的响应信息格式化为XML Document对象返回。

7、status
返回当前HTTP请求的状态码。

HTTP请求状态及其含义:
// 100:Continue(客户必须继续发送请求)
// 101:Switching protocols(客户要求服务器根据请求转换HTTP协议版本)
// 200:OK(成功)
// 201:Created(提示知道新文件的URL)
// 202:Accepted(接收和处理,但处理未完成)
// 203:Non-Authoritative Information(返回信息不正确或不完整)
// 204:No Content(请求收到,但返回信息为空)
// 205:Reset Content(服务器完成请求,用户代理必须复位当前用户已经浏览过的文件)// 206:Partial Content(服务器已经完成部分用户的GET请求)
// 300:Multiple Choices(请求的资源可在多处得到)
// 301:Moved Permanently(删除请求数据)
// 302:Found(在其它地址发现了请求数据)
// 303:See Other(建议客户访问其他URL或访问方式)
// 304:Not Modified(客户端已经执行了GET,但文件未变化)// 305:Use Proxy(请求的资源必须从服务器指定的地址得到)// 307:Temporary Redirect(申明请求的资源临时性删除)
// 400:Bad Request(错误请求,如语法错误)
// 401:Unauthorized(请求授权失败)
// 402:Payment Required(保留有效ChangT o头响应)
// 403:Forbidden(请求不允许)
// 404:Not Found(没有找到文件、查询或URI)
// 405:Method Not Allowed(用户在Request-Line字段定义的方法不允许)
// 406:Not Acceptable(根据用户发送的Accept,请求资源不可访问)
// 407:Proxy Authentication Required(用户必须在代理服务器
上得到授权)
// 408:Request Timeout(请求超时)
// 409:Conflict(对当前资源状态,请求不能完成)
// 410:Gone(服务器不在有此资源且无进一步的参考地址)
// 411:Length Required(服务器拒绝用户定义的Content-Length属性请求)
// 412:Precondition Failed(一个或多个请求头字段在当前请求中错误)
// 413:Request Entity Too Large(请求的资源大于服务器允许的大小)
// 414:Request-URI Too Long(请求的资源URI大于服务器允许的长度)
// 415:Unsupported Media Type (请求资源不支持请求项目格式)
// 416:Requested Range Not Suitable
// 417:Expectation Failed
// 500:Internal Server Error (服务器产生内部错误)
// 501:Not Implemented(服务器不支持请求的函数)
// 502:Bad Gateway(服务器暂时不可用)
// 503:Service Unavailable(服务器过载或暂停维修)
// 504:Gateway Timeout (服务器未响应)
// 505:HTTP Version Not Supported(服务器不支持或拒绝请求头中指定的HTTP版本)8、statusText
返回当前响应行的状态。

XMLHttpRequest的方法
1、abort()
取消当前请求,调用此方法,当前请求返回UNINITIALIZED状态。

2、getAllResourceHeaders()
获取相应的全部Http头信息,返回的响应以键:值的形式返回。

当send方法完成后方可调用此方法。

3、getResourceHeader("header")
获取指定的Http头信息
4、open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword)
新建一个http请求,并设置请求的方法、URL以及验证信息。

bstrMethod代表http方法,可选值为POST、GET、PUT和PROPFIND,大小写不敏感。

bstrUrl为请求的目标URL地址,可以是绝对地址也可以是相对地址。

varAsync为布尔型参数,指定该请求是否为异步方式,默认为true;如果为真,当state状态改变时会调用onreadystatechange属性指向的回调函数。

bstrUser:如果服务器需要验证,此处指定用户名,如果未指定,当服务器需要验证时,会弹出验证窗口。

bstrPassword: 验证信息中的密码部分,如果用户名为空,则此值将被忽略。

5、send(content)
发送请求到http服务器并接收回应
6、setRequestHeader("header","value")
把指定header值设置为指定的值,在设置任何http头信息时必须先调用open();。

相关文档
最新文档