Page 238 - Web性能权威指南
P. 238

第 1 5 章



                                                          XMLHttpRequest
















                 XMLHttpRequest(XHR) 是 浏 览 器 层 面 的 API, 可 以 让 开 发 人 员 通 过 JavaScript
                 实 现 数 据 传 输。XHR 是 在 Internet  Explorer  5 中 首 次 亮 相 的, 后 来 成 为 AJAX
                (Asynchronous  JavaScript  and  XML)革命的核心技术,是今天几乎所有 Web 应用
                 必不可少的基本构件。

                     XMLHTTP 改变了一切。它让 DHTML 中的 D 变得名副其实。它让我们能异
                     步从服务器获取数据,同时在客户端保持文档状态……Outlook Web Access
                    (OWA)团队希望在浏览器中构建一个类似 Win32 应用的想法使其得以进入
                     IE,而这才有了后来的 AJAX。
                                                                        ——Jim Van Eaton
                                                Outlook Web Access: A catalyst for web evolution
                 XHR 诞生前,网页要获取客户端和服务器的任何状态更新,都必须刷新一次。有了
                 XHR,这个过程就可以异步实现,而且完全通过应用的 JavaScript 代码完成。XHR
                 是让我们从制作网页转换为开发交互应用的根本技术。

                 然而,XHR 的能力不仅仅表现在能实现浏览器的异步通信,还表现在它极大地简化
                 了这个异步通信过程。XHR 是浏览器提供的应用 API,这就意味着浏览器会自动帮
                 我们完成所有底层的连接管理、协议协商、HTTP 请求格式化,以及更多工作:

                 •   浏览器管理着连接建立、套接字池和连接终止;
                 •   浏览器决定最佳的 HTTP(S)传输协议(HTTP 1.0、1.x 和 2.0);
                 •   浏览器处理 HTTP 缓存、重定向和内容类型协商;

                                                                                         225
   233   234   235   236   237   238   239   240   241   242   243