ホームページ > 記事 > ウェブフロントエンド > ajaxリクエストのステータスは何ですか?
Ajax リクエストのステータス: 1. 「未初期化」は、send() メソッドがまだ呼び出されないことを意味します; 2. 「ロード中」は、send() メソッドが呼び出され、リクエストが送信中; 3. 「読み込み中」「入力完了」; 4. 「対話型」、応答コンテンツが解析中であることを示す; 5. 「完了」、応答コンテンツの解析が完了し、クライアントで呼び出すことができることを示す。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
ネイティブ Ajax リクエスト記述メソッド:
var http = new XMLHttpRequest(); http.open('get','./package.json'); http.onreadystatechange = function () { if(http.readyState == 4 && http.status == 200) { var result = JSON.parse(http.responseText); console.log(result.name) } }; http.send();
5 の Ajax リクエストの状態 (readyState)
0 - (初期化されていない) send() メソッドはまだ呼び出されていません
1 - (読み込み中) send() メソッドが呼び出され、リクエストが送信されています
2 - (読み込み完了) send() メソッドが実行され、すべての応答コンテンツが受信されました
3 - (インタラクション) 応答コンテンツが解析中です
(0)Uninitialized
このステージでは、XMLHttpRequest オブジェクトが作成されているかどうかを確認し、非初期化の準備のために open() メソッドを呼び出しません。 0 以外の値は、オブジェクトがすでに存在していることを示します。それ以外の場合、ブラウザはエラーを報告します --- オブジェクトは存在しません。
(1) 読み込み
この段階では、xml (標準化が近づいています) HttpRequest オブジェクトが初期化されます。つまり、パラメーター (メソッド) に従って、open() メソッドが呼び出されます。 , url, true) オブジェクトのステータスの設定が完了しました。そして、send() メソッドを呼び出して、サーバーへのリクエストの送信を開始します。値 1 は、リクエストがサーバーに送信されていることを示します。
(2) 読み込み完了
この段階でサーバーからの応答データを受信します。ただし、取得されるのはサーバー応答の元のデータのみであり、クライアントで直接使用することはできません。値 2 は、すべての応答データが受信されたことを示します。そして、データ分析の次の段階に備えることができます。
(3)インタラクション
このステージでは、受信したサーバー側の応答データを解析します。つまり、サーバー側の応答ヘッダーによって返された MIME タイプに従って、データは、responseBody、responseText、または responsexml (標準化が近づいています) 属性を通じてアクセスできる形式に変換され、サーバー上で呼び出す準備が整います。クライアント。ステータス 3 は、データが解析中であることを示します。
(4)完了
この段階では、すべてのデータがクライアントが使用できる形式に解析され、解析が完了したことを確認します。値 4 は、データ解析が完了し、xml (標準化が近づいています) HttpRequest オブジェクトの対応する属性を通じてデータを取得できることを示します。
[関連チュートリアルの推奨事項:
AJAX ビデオ チュートリアル以上がajaxリクエストのステータスは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。