JavaScript/XMLHttpRequest
出典: フリー教科書『ウィキブックス(Wikibooks)』
XMLHttpRequest (XHR) とは、ウェブサーバと通信を行うためのJavaScriptのオブジェクトです。
Ajax[編集]
CGIなどの仕組みを使ってサーバからデータを取得するにはウェブページを遷移する必要がありますが、XMLHttpRequestを用いるとページの遷移なしに、動的かつ非同期にデータを取得することができます。このような技術はAjax (asynchronous JavaScript and XML) と呼ばれます。Ajaxを駆使するとJavaScriptを用いてGoogle マップのようなインタラクティブなウェブアプリケーションを構築することができます。
XMLHttpRequestはその名に反してXMLドキュメントでないデータもやり取りすることができます。また、HTTP以外にFTP通信も行うことができます(ローカルホストではローカルファイルも取得可能)。ただし、XMLHttpRequestを用いて通信できるのは同じドメインのサーバに限られるため、外部のサーバと通信をすることはできません。これを同一生成元ポリシー(どういつせいせいもとポリシー、same origin policy)といいます。
XMLHttpRequest[編集]
var req = new XMLHttpRequest(); req.open('GET', 'example.xml', false); req.onreadystatechange = function(){ if ( req.readyState != 4 ) return; if ( req.status != 200 ) { alert( req.statusText ); return; } alert( req.responseXML ); alert( req.responseText ); // ... }; req.send(null);
プロパティ[編集]
- XMLHttpRequestオブジェクトのプロトタイプ