优秀的编程知识分享平台

网站首页 > 技术文章 正文

AJAX基本教程(五)AJAX-XMLHttpRequest

nanyue 2024-08-02 17:49:21 技术文章 4 ℃

XMLHttpRequest对象是AJAX的关键。自从Internet Explorer 5.5在2000年7月发布以来,它就一直可用,但是直到2005年AJAX和Web 2.0变得流行才被完全发现。

XMLHttpRequest(XHR)是一种API,JavaScript,JScript,VBScript和其他Web浏览器脚本语言可以使用该API使用HTTP在Web服务器之间来回传输XML数据,并在网页的客户端和服务器端。

从XMLHttpRequest调用返回的数据通常将由后端数据库提供。除了XML,XMLHttpRequest还可以用于获取其他格式的数据,例如JSON甚至纯文本。

您已经看了几个有关如何创建XMLHttpRequest对象的示例。

下面列出的是您必须熟悉的一些方法和属性。

XMLHttpRequest方法

  • abort()取消当前请求。
  • getAllResponseHeaders()以字符串形式返回完整的HTTP标头集。
  • getResponseHeader(headerName)返回指定的HTTP标头的值。
  • open(方法,URL)
  • open(方法,URL,异步)
  • open(方法,URL,异步,用户名)
  • 打开(方法,URL,异步,用户名,密码)指定请求的方法,URL和其他可选属性。方法参数的值可以为“ GET”,“ POST”或“ HEAD”。其他HTTP方法,例如“ PUT”和“ DELETE”(主要在REST应用程序中使用)也是可能的。“ async”参数指定是否应异步处理请求。“ true”表示脚本处理在send()方法之后继续执行,而不等待响应,而“ false”表示脚本在继续执行脚本处理之前等待响应。
  • 发送(内容)发送请求。
  • setRequestHeader(label,value)将标签/值对添加到要发送的HTTP标头中。

XMLHttpRequest属性

  • 就绪状态变更每个状态更改时都会触发的事件的事件处理程序。
  • readyStatereadyState属性定义XMLHttpRequest对象的当前状态。下表提供了readyState属性的可能值的列表-
  • 0 该请求未初始化。
  • 1个该请求已建立。
  • 2该请求已发送。
  • 3请求正在处理中。
  • 4请求已完成。

readyState = 0在创建XMLHttpRequest对象之后,但在调用open()方法之前。

readyState = 1在调用open()方法之后但在调用send()之前。

readyState = 2调用send()之后。

readyState = 3在浏览器与服务器建立通信之后,但在服务器完成响应之前。

readyState = 4请求完成后,并且已经从服务器完全接收到响应数据。

  • responseText以字符串形式返回响应。
  • responseXML以XML形式返回响应。此属性返回XML文档对象,可以使用W3C DOM节点树方法和属性来检查和解析XML文档对象。
  • 状态以数字形式返回状态(例如,“ 404”表示“找不到”,200表示“确定”)。
  • statusText以字符串形式返回状态(例如,“未找到”或“确定”)。
最近发表
标签列表