`
AILIKES
  • 浏览: 186413 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ajax主要对象、方法以及属性的介绍

阅读更多

1.XMLHttpRequest对象
  XMLHttpRequest对象在大部分浏览器上已经实现而且拥有一个简单的接口允许数据从客户端传递到服务端,但并不会打断用户当前的操作。使用XMLHttpRequest传送的数据可以是任何格式,虽然从名字上建议是XML格式的数据。

XMLHttpRequest最早是在IE5中以ActiveX组件的形式实现的。非W3C标准。创建XMLHttpRequest对象(由于非标准所以实现方法不统一)。Internet Explorer把XMLHttpRequest实现为一个ActiveX对象其他浏览器(Firefox、Safari、Opera…)把它实现为一个本地的JavaScript对象。

XMLHttpRequest在不同浏览器上的实现是兼容的,所以可以用同样的方式访问XMLHttpRequest实例的属性和方法,而不论这个实例创建的方法是什么。

XMLHttpRequest对象方法

方法

描述

abort()

停止当前请求

getAllResponseHeaders()

把http请求的所有响应首部作为键/值对返回

getResponseHeader("headerLabel")

返回指定首部的串值

open(method,url,async)

规定请求的类型、URL 以及是否异步处理请求。

method:请求的类型;GET 或 POST

url:文件在服务器上的位置

async:true(异步)或 false(同步)

send(content)

向服务器发送请求

setRequestHeader("label", "value")

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

XMLHttpRequest对象属性

 

2.发送请求--方法和属性介绍

利用XMLHttpRequest实例与服务器进行通信包含以下3个关键部分:onreadystatechange事件处理函数、open 方法、send 方法 。

onreadystatechange:

该事件处理函数由服务器触发,而不是用户;在 Ajax 执行过程中,服务器会通知客户端当前的通信状态。这依靠更新 XMLHttpRequest 对象的 readyState 来实现。改变 readyState 属性是服务器对客户端连接操作的一种方式。每次 readyState 属性的改变都会触发 readystatechange事件!

open(method, url, asynch)

XMLHttpRequest 对象的 open 方法允许程序员用一个Ajax调用向服务器发送请求。method:请求类型,类似 “GET”或”POST”的字符串。若只想从服务器检索一个文件,而不需要发送任何数据,使用GET(可以在GET请求里通过附加在URL上的查询字符串来发送数据,不过数据大小限制为2000个字符)。若需要向服务器发送数据,用POST。在某些情况下,有些浏览器会把多个XMLHttpRequest请求的结果缓存在同一个URL。如果对每个请求的响应不同,这就会带来不好的结果。把当前时间戳追加到URL的最后,就能确保URL的惟一性,从而避免浏览器缓存结果。比如:

var url = "GetExample?timeStamp=" + new Date().getTime();

url:路径字符串,指向你所请求的服务器上的那个文件。可以是绝对路径或相对路径。asynch:表示请求是否要异步传输,默认值为true(异步)。指定true,在读取后面的脚本之前,不需要等待服务器的相应。指定false,当脚本处理过程经过这点时,会停下来,一直等到Ajax请求执行完毕再继续执行。

send(data)

open 方法定义了 Ajax 请求的一些细节。send 方法可为已经待命的请求发送指令data:将要传递给服务器的字符串。若选用的是 GET 请求,则不会发送任何数据, 给 send 方法传递 null 即可:request.send(null);当向send()方法提供参数时,要确保open()中指定的方法是POST,如果没有数据作为请求体的一部分发送,则使用null.

setRequestHeader(header,value)

当浏览器向服务器请求页面时,它会伴随这个请求发送一组首部信息。这些首部信息是一系列描述请求的元数据(metadata)。首部信息用来声明一个请求是 GET 还是 POST。

Ajax 请求中,发送首部信息的工作可以由setRequestHeader完成.参数header:首部的名字;  参数value:首部的值。如果用 POST 请求向服务器发送数据,需要将 “Content-type” 的首部设置为 “application/x-www-form-urlencoded”.它会告知服务器正在发送数据,并且数据已经符合URL编码了。该方法必须在open()之后才能调用.

3. 接收--方法和属性介绍

用 XMLHttpRequest 的方法可向服务器发送请求。在 Ajax 处理过程中,XMLHttpRequest 的如下属性可被服务器更改:readyState

statusresponseText、responseXML。

status

服务器发送的每一个响应也都带有首部信息。三位数的状态码是服务器发送的响应中最重要的首部信息,并且属于超文本传输协议中的一部分。

常用状态码及其含义:

404没找到页面(notfound)

403禁止访问(forbidden)

500内部服务器出错(internalservice error)

200一切正常(ok)

304没有被修改(notmodified)(服务器返回304状态,表示源文件没有被修改)

在XMLHttpRequest 对象中,服务器发送的状态码都保存在 status 属性里。通过把这个值和 200 或 304 比较,可以确保服务器是否已发送了一个成功的响应

responseText

XMLHttpRequest 的 responseText 属性包含了从服务器发送的数据。它是一个HTML,XML或普通文本,这取决于服务器发送的内容。

当 readyState 属性值变成 4 时, responseText 属性才可用,表明 Ajax 请求已经结束。

responseXML

如果服务器返回的是 XML, 那么数据将储存在 responseXML 属性中。只用服务器发送了带有正确首部信息的数据时,responseXML 属性才是可用的。 MIME 类型必须为 text/xml

AJAX开发框架

AJAX实质上也是遵循Request/Server模式,所以这个框架基本的流程是:对象初始化、发送请求、服务器接收、服务器返回、客户端接收、修改客户端页面内容。只不过这个过程是异步的。

分享到:
评论

相关推荐

    AJAX对象方法和对象属性

    **XMLHttpRequest对象属性** 1. **onreadystatechange**: 当请求状态改变时,这个属性所关联的函数会被调用。你可以在此处设置一个回调函数来处理服务器的响应。 2. **readyState**: 描述请求的状态,共有5个可能...

    Ajax基本对象的属性和方法

    Ajax 基本对象的属性主要用于处理 XML 的 DOM 元素,包括: 1. childNodes:返回当前元素的所有子元素的数组。 2. firstChild:返回当前元素的第一个下级子元素。 3. lastChild:返回当前元素的最后一个子元素。 4....

    ajax传递list对象数组

    通过以上介绍,我们了解了如何在前端使用JavaScript处理List对象数组并通过AJAX发送给后端,以及后端如何接收并处理这些数据。这在实际项目开发中是非常实用的技巧。希望本文能帮助到正在学习或实践这一技术的朋友。

    认识Ajax的作用,对象及属性

    以下是一些关于XMLHttpRequest对象的重要属性和方法: - **属性**: - `onreadystatechange`:当对象状态改变时触发的事件处理器。 - `readyState`:表示请求的当前状态,从0到4,4表示完成。 - `responseText`...

    ajax各个属性

    本文将详细介绍 AJAX 的核心组件 XMLHttpRequest 对象的创建方式以及其常用的方法和属性。 #### 二、创建 XMLHttpRequest 对象实例 在使用 AJAX 进行网络请求前,首先需要创建一个 XMLHttpRequest 对象实例。以下...

    ajax调用后台方法

    1. **创建XMLHttpRequest对象**:这是Ajax的基础,大多数现代浏览器都内置了这个对象。 2. **初始化连接**:通过XMLHttpRequest对象的`open()`方法,设置请求的类型(GET、POST等)、URL和是否异步。 3. **发送请求*...

    VS2008 AJAX控件介绍 AJAX组成及XMLHttpRequest对象

    接着,使用send()方法发送请求,如果请求是异步的,当服务器响应时,onreadystatechange事件会被触发,此时可以通过readyState和status属性检查请求状态,以及通过responseText或responseXML获取服务器返回的数据。...

    全面剖析 Ajax XMLHttpRequest对象

    XMLHttpRequest对象的主要属性和方法包括: 1. readyState属性:表示请求的状态,共有5个值,分别对应请求的不同阶段,从0(未初始化)到4(完成)。当状态改变时,会触发onreadystatechange事件。 2. ...

    Ajax简介Ajax.API

    XMLHttpRequest 对象的实现是兼容的,可以用同样的方式访问 XMLHttpRequest 实例的属性和方法,而不论这个实例创建的方法是什么。 XMLHttpRequest 对象的方法包括: * abort():停止当前请求 * ...

    Ajax常用方法

    通过本文档的学习,你已经掌握了 jQuery 中 `$.ajax()` 方法的基本使用方法以及其主要参数的功能。`$.ajax()` 方法的强大之处在于它的灵活性,可以根据实际需求调整各种配置选项。在实际项目中合理利用这些配置,...

    asp.net 利用jquery-ajax调用后台方法

    下面将详细介绍如何利用jQuery-AJAX调用ASP.NET后台方法。 1. **创建WebMethod** 在ASP.NET的C#或VB.NET代码中,我们可以创建一个静态的WebMethod,标记为 `[WebMethod]` 或 `[ScriptMethod]`,以便可以从...

    关于ajax对象一些常用属性、事件和方法大小写比较常见的问题总结

    最近比较空闲,于是抽个时间...在项目中经常发现ajax板块好多问题都是属性,方法,事件大小写不区分问题,最终导致了程序运行出现麻烦,下面给大家介绍关于ajax对象一些常用属性、事件和方法大小写比较常见的问题总结

    Js中使用hasOwnProperty方法检索ajax响应对象的例子.docx

    在JavaScript编程中,`hasOwnProperty`方法是一个非常关键的特性,尤其在处理对象属性时。这个方法用于判断一个对象是否包含自定义属性而非原型链上的属性。`hasOwnProperty`是对象自身的非继承方法,这意味着每个...

    ajax返回json对象.zip

    总结来说,"Ajax返回JSON对象"涉及到的技术点包括Ajax的基本使用、JSON数据格式、Ajax发送和接收JSON数据的流程、jQuery对Ajax的支持、跨域请求以及安全性和错误处理。这些都是Web开发中不可或缺的知识点,理解和...

    Struts2+JSON_实现AJAX_返回对象和列表

    本文将详细解释如何使用Struts2和JSON来实现AJAX返回对象和列表。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人阅读和编写,同时也易于机器解析和生成。在Struts2中,JSON插件...

    jQuery AJAX XMLHttpRequest对象PPT

    XMLHttpRequest对象是JavaScript中用于异步数据交换的核心组件,它是AJAX(Asynchronous JavaScript and XML)技术的基础。AJAX允许网页在不刷新整个页面的情况下,仅更新部分区域,从而提高用户体验。尽管名称中...

    全面剖析Ajax的XMLHttpRequest对象.doc

    onreadystatechange 属性接收一个 EventListener 值,向该方法指示无论 readyState 值何时发生改变,该对象都将激活。 三、 XMLHttpRequest 对象的方法 XMLHttpRequest 对象提供了多种方法来控制 HTTP 请求与响应...

    jquery的ajax传json对象数组到struts2的action

    本文将深入探讨如何使用jQuery的AJAX方法发送JSON对象数组到Struts2的Action,并在后端进行处理。 首先,我们了解JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于...

    Ajax深度剖析,XMLHttpRequest对象大揭秘

    除了`open()`和`send()`,XMLHttpRequest对象还有许多其他方法,如`abort()`用于取消请求,`setRequestHeader()`用于设置HTTP头部信息,以及`overrideMimeType()`用于覆盖响应的MIME类型。 在实际应用中,Ajax广泛...

Global site tag (gtag.js) - Google Analytics