15章XMLHttpRequest

XMLHttpRequest(XHR)は、JavaScriptを使用してデータ転送ができるブラウザレベルのAPIです。XHRはInternet Explorer 5で初めて登場し、AJAX(Asynchronous JavaScript and XML)革命のキーとなる技術の1つになりました。現在では、ほとんどのWebアプリケーションにおける基礎的な要素です。

XMLHTTPはすべてを変えた。DHTMLに「D」をつけた。サーバから非同期でデータを取得し、ドキュメントの状態をクライアントに保存することができるようになった……。Win32ライクのリッチなアプリケーションをブラウザ上で構築したいというOutlook Web Access(OWA)チームの強い希望がこの技術をIEに搭載させ、AJAXが現実のものとなった。

—— Jim Van EatonOutlook Web Access: A catalyst for web evolution

XHRが登場する前は、サーバ-クライアント間で状態のアップデートを送受信するためには、Webページ全体を更新しなければなりませんでした。XHRの登場によって、このワークフローを非同期でも行えるようになり、またJavaScriptコードで完全に制御できるようになりました。XHRは、単なるWebページの構築からインタラクティブなWebアプリケーションの構築へと大きく飛躍させてくれます。

しかし、ブラウザで非同期通信を行うことだけではなく、その通信をシンプルにしたということもXHRの力です。XHRはブラウザが提供するアプリケーションAPIです。つまり、低レイヤーで発生するすべての接続管理、プロトコルネゴシエーション、HTTPリクエストのフォーマットなどをブラウザが自動的に処理してくれるということです。 ...

Get ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.