Ajax
异步 JavaScript 和 XML,或 Ajax 本身不是一种技术,而是一种将一些现有技术结合起来使用的方法,包括:HTML 或 XHTML、CSS、JavaScript、DOM、XML、XSLT、以及最重要的 XMLHttpRequest
对象。当使用结合了这些技术的 Ajax 模型以后,网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面。这使得程序能够更快地回应用户的操作。
尽管 Ajax 中的 X 代表 XML,但是 JSON 才是首选,因为它更加轻量,而且是用 JavaScript 编写的。在 Ajax 模型中,JSON 和 XML 都被用来包装信息。
文档
- 新手入门
-
这篇文章引导你了解 Ajax 的基础知识,并给你两个简单的实践例子来让你开始上手。
- 使用 XMLHttpRequest API
-
XMLHttpRequest
API 是 Ajax 的核心。本文将解释如何使用一些 Ajax 技术,比如:- 分析和操纵服务器响应
- 监控请求过程
- 提交表单或者上传二进制文件,使用纯 Ajax 或者
FormData
对象 - 在 Web worker 中使用 Ajax
- 纯 Ajax 导航示例
-
本文提供了一个仅由三个页面组成的纯 Ajax 网站的(最小)工作示例。
- 发送和接收二进制数据
-
XMLHttpRequest
对象的responseType
属性可以被设置来改变服务器的预期响应类型。可能的值是空字符串(默认)、arraybuffer
、blob
、document
、json
和text
。response
属性将根据responseType
包含,作为一个ArrayBuffer
、Blob
、Document
、JSON
或字符串的实体主体。这篇文章将展示一些 Ajax I/O 技术。 - XML
-
Extensible Markup Language (XML) 可扩展标记语言是 W3C 推荐的一种专用于创建专用标记语言的通用标记语言。它是 SGML 的简化子集,能够描述许多不同类型的数据。其主要目的是促进在不同的系统,尤其是通过互联网连接的系统间的数据共享。
- 解析和序列化 XML
-
如何从字符串、文件或通过 JavaScript 解析 XML 文档,以及如何将 XML 文档序列化为字符串或文件。
- XPath
-
XPath 代表 XML Path Language,它使用非 XML 语法,提供了一种灵活的方式来寻址(指向)XML 文档的不同部分。除此之外,它还可以用于测试文档中的寻址节点,以确定它们是否匹配模式。
FileReader
API-
FileReader
API 允许 Web 应用程序异步读取存储在用户计算机上的文件(或原始数据缓存)的内容,使用File
或Blob
对象指定要读取的文件或数据。文件对象可以从用户选择文件后的<input>
元素的FileList
对象中获取,也可以从拖放操作的DataTransfer
对象获取。 - XMLHttpRequest 对 HTML 的支持
-
W3C XMLHttpRequest规范向
XMLHttpRequest
添加了 HTML 解析支持,XMLHttpRequest 原本只支持 XML 解析。此功能允许 Web 应用程序使用XMLHttpRequest
获取 HTML 资源作为解析的 DOM。
相关技术
虽然 Ajax 仍然有用,但自 2005 年以来,已经开发了可以实现类似功能的其他 API,包括Fetch API和服务端发送事件。
- Fetch API
-
Fetch API 提供了一个获取资源的接口。对于使用过
XMLHTTPRequest
的人来说非常熟悉,但这个 API 提供了一个更强大和灵活的功能集。 - 服务端发送事件
-
传统上,一个网页必须向服务器发送请求以接收新数据;也就是说,网页向服务器请求数据。有了服务器发送的事件,服务器就有可能在任何时候向网页发送新的数据,通过推送消息给网页。这些传入的消息可以被视为网页内部的事件 + 数据。也请参见使用服务器发送的事件。
参见
- XMLHttpRequest 规范
-
WHATWG 现行标准