Info

Ajaxの第一歩といわれるほど基本中の基本である XMLHttpRequest についてちょっと勉強、メモ。XMLHttpRequest のオブジェクト、メソッド、プロパティについて

オブジェクト:

IE
 new ActiveXObject(“Microsoft.XMLHTTP”); //version <= IE5.0
 new ActiveXObject(“Msxml2.XMLHTTP”);  //version > IE5.0
IE以外
 new XMLHttpRequest();

メソッド:

abort():
 現在実行中の送受信の停止。

getAllResponseHeaders():
 全てのHTTPヘッダを取得する。

getResponseHeader(“headerLabel”):
 指定したHTTPヘッダを取得する。

open(“method”, “URL”[, asyncFlag[, “userName”[, “password”]]]):
 指定したメソッド method ( GET|POST|PUT|PROPFIND )で指定
 URLにリクエストする。リクエストの成功・失敗に関わらず次の
 処理を実行する場合があれば、asynFlag を False に。それ以外は
 Ture にする。省略すると True で実行。userName、password は
 認証が必要な場合にのみ指定。

send(content):
 サーバに HTTP リクエストを送信する。content には送信する
 データを設定出来る。送信先の URL、送信方式(GET や
 POST など)は、open で指定したものになる。データを送信して
 も、送信先でそのデータを処理するようにしていないと何も変化
 なし。データを送信しない時でも必要で、その時は send(null)
 とする。

setRequestHeader(“label”, “value”):
 HTTP要求時に送られるヘッダーを追加する。label は、追加
 したいヘッダー名。value は、その値。

プロパティ:

onreadystatechange:
 XMLHttpRequestオブジェクトの状態(readyState)が変化する
 度に呼び出されるイベントハンドラ。

readyState:
 XMLHttpRequest の通信の状態
 0 = uninitialized(読み込み開始前の初期状態)
 1 = loading(読み込み中)
 2 = loaded(とりあえず読み込んだ)
 3 = interactive(読み込んだデータを解析中)
 4 = complete(読み込んだデータの解析完了、または失敗した。)

responseBody:
 レスポンスをバイト配列で取得。IE のみで使用可。ただし、  
 responseBody で取得したデータは ADODB.Stream を用いて
 操作するのだが、肝心の ADODB.Stream は、 2004年7月の修正で
 IE から使用出来なくなっているので、実際にはどのブラウザでも
 使用出来ないのと同じようなもの。動作するサンプルは無し。
 C/Sアプリなどの ADODB.Stream が使用出来る環境が必要。また、
 Windows サーバであれば、サーバ側の処理での使用も
 OK のようだが未確認。

responseStream:
 レスポンスを IStream 形式で取得。IE のみで使用可。

responseText:
 レスポンスをテキスト形式で取得。

responseXML:
 レスポンスを XML DOM 形式で取得。

status:
 HTTPステータスコードを取得。404、200、403…

statusText:
 HTTPステータの詳細メッセージを取得

Comments

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Basic HTML is allowed. Your email address will not be published.

Subscribe to this comment feed via RSS