Ajax-what-is-xmlhttprequest

提供:Dev Guides
移動先:案内検索

AJAX-XMLHttpRequest

XMLHttpRequestオブジェクトはAJAXのキーです。 Internet Explorer 5.5が2000年7月にリリースされて以来利用可能ですが、2005年にAJAXとWeb 2.0が普及するまで完全には発見されませんでした。

XMLHttpRequest(XHR)は、JavaScript、JScript、VBScript、およびその他のWebブラウザースクリプト言語で使用できるAPIであり、HTTPを使用してWebサーバーとの間でXMLデータを転送および操作し、Webページのクライアント側とサーバ側。

XMLHttpRequest呼び出しから返されるデータは、多くの場合、バックエンドデータベースによって提供されます。 XMLの他に、XMLHttpRequestを使用して、他の形式のデータを取得できます。 JSONまたはプレーンテキスト。

XMLHttpRequestオブジェクトの作成方法に関するいくつかの例を見てきました。

以下に、慣れる必要のあるメソッドとプロパティの一部を示します。

XMLHttpRequestメソッド

  • アボート() +現在のリクエストをキャンセルします。
  • * getAllResponseHeaders()* + HTTPヘッダーの完全なセットを文字列として返します。
  • * getResponseHeader(headerName)* +指定されたHTTPヘッダーの値を返します。
  • * open(メソッド、URL)*
  • * open(メソッド、URL、非同期)*
  • * open(method、URL、async、userName)*
  • * open(メソッド、URL、非同期、ユーザー名、パスワード)* +リクエストのメソッド、URL、およびその他のオプション属性を指定します。 + methodパラメーターには、「GET」、「POST」、または「HEAD」の値を指定できます。 「PUT」や「DELETE」などのその他のHTTPメソッド(主にRESTアプリケーションで使用される)が可能です。 +「async」パラメータは、リクエストを非同期で処理するかどうかを指定します。 「true」は、スクリプト処理がsend()メソッドの後に応答を待たずに続行することを意味し、「false」は、スクリプトがスクリプト処理を続行する前に応答を待つことを意味します。
  • 送信(コンテンツ) +要求を送信します。
  • * setRequestHeader(label、value)* +送信するHTTPヘッダーにラベル/値のペアを追加します。

XMLHttpRequestプロパティ

  • onreadystatechange +状態が変化するたびに発生するイベントのイベントハンドラー。
  • readyState + readyStateプロパティは、XMLHttpRequestオブジェクトの現在の状態を定義します。 +次の表は、readyStateプロパティの可能な値のリストです-
State Description
0 The request is not initialized.
1 The request has been set up.
2 The request has been sent.
3 The request is in process.
4 The request is completed.
*readyState = 0* XMLHttpRequestオブジェクトを作成した後、open()メソッドを呼び出す前。
*readyState = 1* open()メソッドを呼び出した後、send()を呼び出す前。
*readyState = 2* send()を呼び出した後。
*readyState = 3* ブラウザがサーバーとの通信を確立した後、サーバーが応答を完了する前。
*readyState = 4* 要求が完了し、応答データがサーバーから完全に受信された後。
  • responseText +応答を文字列として返します。
  • responseXML +応答をXMLとして返します。 このプロパティはXMLドキュメントオブジェクトを返します。このオブジェクトは、W3C DOMノードツリーのメソッドとプロパティを使用して調査および解析できます。
  • 状態 +ステータスを数値として返します(例:「Not Found」の場合は404、「OK」の場合は200)。
  • statusText +ステータスを文字列として返します(「Not Found」または「OK」など)。