Ajax 【Asynchronous JavaScript + XML】
概要
Ajax(Asynchronous JavaScript + XML)とは、あるWebページを表示した状態のまま、別のページや再読込などを伴わずにWebサーバ側と通信を行い、動的に表示内容を変更する手法。ページ上でプログラムを実行できるプログラミング言語JavaScriptの拡張機能を用いる。従来、Webページの内容にサーバから受信したデータを反映させるには、デザインなどが同等の別のページを読み込んで新たに表示させるか、同じページをリロード(再読込)してサーバからページごと受信し直す必要があった。
AjaxではJavaScriptのHTTP通信機能(XMLHttpRequestあるいは同等のWebブラウザの拡張API)を用い、ページ内で実行されるプログラム中からサーバとの間でHTTP通信を行い、内容のロードを行う。通信方式はWebページの読み込みと同じHTTPによるURL指定を用いるため、Webサーバ側からはブラウザが新たなページの送信要求をしてきたように見える。
XMLHttpRequestはプログラムの実行と非同期(asynchronous)に通信を行い、サーバからの応答の受信が完了すると指定された関数を実行するという仕組みになっている。サーバと通信する間、プログラムの流れや利用者を待たせずに済む。また、受信したデータはデフォルトではHTMLを含むXML形式のオブジェクトとして処理される。
Ajaxとは「非同期にXMLデータをJavaScript上で送受信できる」という意味の略語だが、設定によりHTTP通信を同期して扱う(通信完了まで一時停止する)ことも、受信したデータをXMLではなく単純なテキストデータ(プレーンテキスト)として扱うこともできる。これらも便宜上Ajaxのバリエーションの一種とみなされている。
(2022.3.22更新)