`
liran_java
  • 浏览: 68332 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

XMLHTTPRequest 的几个方法和属性

    博客分类:
  • AJAX
阅读更多

xmlHttpRequest 的几个方法属性

  • open() :建立到服务器的新请求。
  • send() :向服务器发送请求。
  • abort() :退出当前请求。
  • readyState :提供当前 HTML 的就绪状态。
  • responseText :服务器返回的请求响应文本

 

HTTP 就绪状态(readyState状态代码)

前面提到,服务器在完成请求之后会在 XMLHttpRequestonreadystatechange 属性中查找要调用的方法。这是真的,但还不完整。事实上,每当 HTTP 就绪状态改变时它都会调用该方法。这意味着什么呢?首先必须理解 HTTP 就绪状态。

HTTP 就绪状态表示请求的状态或情形。它用于确定该请求是否已经开始、是否得到了响应或者请求/响应模型是否已经完成。它还可以帮助确定读取服务器提供的响应文本或数据是否安全。在 Ajax 应用程序中需要了解五种就绪状态:

  • 0 :请求没有发出(在调用 open() 之前)。
  • 1 :请求已经建立但还没有发出(调用 send() 之前)。
  • 2 :请求已经发出正在处理之中(这里通常可以从响应得到内容头部)。
  • 3 :请求已经处理,响应中通常有部分数据可用,但是服务器还没有完成响应。
  • 4 :响应已完成,可以访问服务器响应并使用它。

与大多数跨浏览器问题一样,这些就绪状态的使用也不尽一致。您也许期望任务就绪状态从 0 到 1、2、3 再到 4,但实际上很少是这种情况。一些浏览器从不报告 0 或 1 而直接从 2 开始,然后是 3 和 4。其他浏览器则报告所有的状态。还有一些则多次报告就绪状态 1。在上一节中看到,服务器多次调用 updatePage() ,每次调用都会弹出警告框 —— 可能和预期的不同!

有了就绪状态和您在 Ajax 编程技术中学习到的服务器的响应,您就可以为 Ajax 应用程序添加另外一级复杂性了 —— 这要使用 HTTP 状态代码。这些代码对于 Ajax 来说并没有什么新鲜。从 Web 出现以来,它们就已经存在了。在 Web 浏览器中您可能已经看到过几个状态代码:

  • 401 :未经授权
  • 403 :禁止
  • 404 :没找到
  • 301 :永久移动
  • 302 :找到(请求被重新定向到另外一个 URL/URI 上)
  • 305 :使用代理(请求必须使用一个代理来访问所请求的资源)

使用 Ajax 生成一个 HEAD 请求

   function getSalesData() {
     createRequest();
     var url = "/boards/servlet/UpdateBoardSales";
     request.open("HEAD"
, url, true);
     request.onreadystatechange = updatePage;
     request.send(null);
   }

在这些情况中,您只使用了适当的头名,并将其传递给 XMLHttpRequest 对象的 getResponseHeader() 方法。因此要获取响应的长度,只需要调用 request.getResponseHeader("Content-Length"); 。要获取内容类型,请使用 request.getResponseHeader("Content-Type");

分享到:
评论

相关推荐

    创建XMLHttpRequest对象的方法.rar

    本压缩包文件"创建XMLHttpRequest对象的方法.rar"包含了一份关于如何创建XMLHttpRequest对象的详细教程,其核心内容可以从以下几个方面来理解: 1. **XMLHttpRequest对象的创建** 在JavaScript中,XMLHttpRequest...

    学习XMLHttpRequest写的几个实例

    XMLHttpRequest(XHR)是Web开发中的一个关键技术,它允许JavaScript在不刷新整个页面的情况下与服务器进行异步数据交换,这就是我们常说的AJAX(Asynchronous JavaScript and XML)。本压缩包包含了一些...

    XMLHttpRequest

    这个对象提供了与服务器交互的一系列方法和属性。 3. **请求的生命周期**:XMLHttpRequest有四个主要状态,通过`readyState`属性表示: - 0 (UNSENT):对象已创建,但`open()`方法尚未被调用。 - 1 (OPENED):`...

    XMLHttpRequest对象的介绍和实现

    本文档将详细介绍XMLHttpRequest对象的基本知识、属性和方法,并演示如何使用它来进行简单的请求与处理。 #### 二、XMLHttpRequest对象的历史与现状 XMLHttpRequest对象最初由微软公司在Internet Explorer中引入,...

    全面剖析XMLHttpRequest对象

    它有几个重要的属性和方法,其中readyState属性描述了请求的当前状态,共有五个阶段(0-4),分别对应请求的不同阶段,如未初始化、发送、接收中和已完成。当readyState发生变化时,会触发onreadystatechange事件,...

    XMLHttpRequest中文参考手册

    XMLHttpRequest对象是浏览器提供的API,它主要包含以下几个核心方法: 1. **open()**: 这个方法用于初始化请求。你需要指定请求类型(GET、POST等)、URL以及是否异步执行。例如:`xhr.open('GET', '...

    XMLHTTPRequest对象详解

    这个方法接受几个参数,包括请求类型(如GET或POST)、URL、以及异步标志(默认为异步)。例如,`xmlhttp.open("GET", "http://localhost/example.htm", false)`将发起一个同步GET请求到指定的URL。 3. **发送数据*...

    XmlHttpRequest与XMLDOM的完整使用(ASP.NET Web)

    XMLHttpRequest的使用主要涉及以下几个步骤: 1. 创建实例:在JavaScript中,可以通过`new XMLHttpRequest()`来创建一个XHR对象。 2. 配置请求:设置HTTP方法(GET或POST)、URL、是否异步执行等,例如`xhr.open('...

    ajax使用XMLHttpRequest实现简单的信息验证

    为了处理服务器的响应,我们需要定义几个事件监听器,如`onreadystatechange`和`onerror`。`onreadystatechange`会在请求状态改变时被调用,而`onerror`用于处理错误。 ```javascript xhr.onreadystatechange = ...

    XMLHttpRequest中文参考手册[PDF]

    XHR对象有几个关键的事件,如`onreadystatechange`、`onload`、`onerror`和`ontimeout`,它们可以帮助开发者跟踪请求的状态和处理结果。`onreadystatechange`是最常用的,当请求状态改变时触发,通常在`readyState`...

    jQuery AJAX XMLHttpRequest对象PPT

    2. XMLHttpRequest对象的属性和事件 - readyState属性:表示请求的当前状态,从0(未初始化)到4(完成)。当状态改变时,会触发onreadystatechange事件。 - status属性:返回HTTP状态码,如200表示成功,404表示找...

    AjaxXMLHttpRequest_Demo02.zip

    在AjaxXMLHttpRequest_Demo02.zip中,我们可能会看到以下几个关键组成部分: 1. **HTML文件**:通常命名为index.html,它是用户界面的基础,包含用户交互的元素,如按钮、输入框等。当用户触发某个事件(如点击按钮...

    使用XMLHttpRequest对象.doc

    基本流程包括以下几个步骤: 1. **初始化请求**:通过`open()`方法设置请求类型(GET、POST等)、URL以及是否异步执行。 2. **设置请求头**:如果需要,可以通过`setRequestHeader()`方法设置HTTP头信息。 3. **...

    XMLHttpRequest中文参考手册(7)

    通过结合使用这些属性和方法,开发者可以构建出功能强大且灵活的异步数据交互系统,极大地提升了Web应用的用户体验和性能。 总之,《XMLHttpRequest中文参考手册(7)》围绕着XMLHttpRequest对象的使用进行了详尽的...

    XMLHttpRequest笔记

    `window.XMLHttpRequest` 作为 `window` 对象的一个属性,提供了一种在客户端与服务器进行异步通信的方式。这在 Web 开发中极为重要,因为它使得网页可以在不重新加载整个页面的情况下,通过 JavaScript 代码请求、...

Global site tag (gtag.js) - Google Analytics