ホームページ > ウェブフロントエンド > H5 チュートリアル > HTML5でJavaScriptでAJAXを要求する方法は?

HTML5でJavaScriptでAJAXを要求する方法は?

Emily Anne Brown
リリース: 2025-03-10 18:32:18
オリジナル
951 人が閲覧しました

html5でjavascriptを使用してajaxリクエストを作成する方法

javascriptを使用してhtml5でajax要求を作成するには、 xmlhttprequest オブジェクト(またはより最新 fetch api)を活用します。両方の方法を使用してそれを行う方法は次のとおりです。

xmlhttprequest

 <code class="javascript"> function makeajaxrequest(url、method、callback){const xhr = new xmlhtprequest(); xhr.open(method、url); xhr.onload = function(){if(xhr.status&gt; = 200&amp;&amp; xhr.status&lt; 300){callback(null、xhr.response); //成功、コールバックへの応答をパス} else {callback(xhr.status、null); //エラー、ステータスコードをコールバックに渡す}}; xhr.onerror = function(){callback(xhr.status、null); //ネットワークエラーを処理}; xhr.send(); } //例:makeajaxrequest( 'data.json'、 'get'、function(error、response){if(console.error){console.error( 'error:'、error);} else {response: '、json.parse(response));}}); <code> MakeajaxRequest </code> URL、HTTPメソッド(GET、投稿など)、およびコールバック関数を引数として使用します。 <code> xmlhttprequest </code>オブジェクトを作成し、<code> onload </code>(成功したリクエスト)および<code> onerror </code>(ネットワークエラー)のイベントリスナーを設定し、リクエストを送信します。コールバック関数は応答またはエラーを処理します。 <p> <strong> <code> fetch </code> api:</strong> </p> <pre class="brush:php;toolbar:false"> <code class="javascript"> function makefetchrequest(url、method、body){const options = {method:method:headers:{'content-type': 'アプリケーション/json'///// json.stringify(body)// jsonデータを使用した投稿要求の場合}; fetch(url、options).then(response =&gt; {if(!respons.ok){throw new error( `http error!status:$ {respons.status}`);} return respons.json(); // parse json response})。 console.error( 'error:'、error); } //例:makefetchRequest( 'data.json'、 'get')makefetchrequest( 'submit_data.php'、 'post'、{name:&quot; john doe&quot;、email:&quot; quot; john@example.com"}); </code> 
ログイン後にコピー
約束を使用して、非同期操作を管理しやすくします。この例は、リクエスト本体にJSONデータを送信するなど、取得と投稿の両方のリクエストの両方を処理する方法を示しています。さまざまなデータ型に必要に応じて content-type ヘッダーを調整することを忘れないでください。

Web開発にAJAXを使用することの重要な利点は何ですか?完全なページをリロードする必要があります。これにより、ユーザーはインタラクションごとにページ全体が更新されるのを待つ必要がないため、より速く、より応答性の高いユーザーエクスペリエンスになります。

  • パフォーマンスの改善: Ajaxは、クライアントとサーバー間の転送されるデータの量を減らし、読み込み時間をより高速にすることになります。ユーザーのワークフローを中断することなく動的にコンテンツを更新する。これは、ライブチャット、リアルタイムの更新、インタラクティブフォームなどの機能にとって重要です。ユーザーは、ページのリロードなしで要素と対話し、即時フィードバックを受け取ることができます。
  • 懸念の分離: ajaxは、プレゼンテーションレイヤー(フロントエンド)をデータレイヤー(バックエンド)から分離するのに役立ち、コード組織と保守性を高めます。堅牢でユーザーフレンドリーなWebアプリケーションを作成するために重要です。重要な戦略は次のとおりです。
    • httpステータスコードを確認してください: xmlhttprequest オブジェクトの response> response.ok プロパティの code>プロパティのプロパティを常に調べてください。 200-299範囲外のステータスコードは、エラー(例えば、404が見つかりません、500内部サーバーエラー)を示します。 <code> xmlhttprequest onerror イベントを聞くか、 .catch() block in fetch> fetch 。これにより、ユーザーは問題を理解し、適切なアクションを実行できます。集中エラー処理メカニズムを使用してデバッグの目的でエラーを記録することを検討してください。
    • retryメカニズム:過渡エラー(例:一時的なネットワークグリッチ)については、短い遅延後にリクエストを自動的に再送信する再試行メカニズムを実装することを検討してください。問題を解決してください。これにより、全体的なユーザーエクスペリエンスが向上します。

    fetch> code>を使用した詳細なエラー処理:

     <code class="javascript"> fetch(url).then(response =&gt; {if(!respons.ok){if(response.status == 404) == 500){'サーバーエラー。後でもう一度試してください。 //ユーザーフレンドリーなエラーメッセージアラート(error.message); </code> 
    ログイン後にコピー

    html5にajaxを実装する際の一般的な落とし穴は何ですか?適切なエラー処理は、予期しない動作とユーザーエクスペリエンスの低下につながる可能性があります。潜在的なエラーを常に予測し、優雅に処理してください。すべての小さなタスクにAJAXを使用すると、不必要なオーバーヘッドと複雑さにつながる可能性があります。フルページの更新がよりシンプルで効率的になるでしょう。

  • 進行状況インジケーターの欠如:長いAJAXリクエストの場合、進行状況インジケーター(例えば、ロードスピナー)を提供することが重要であり、ユーザーにフラストレーションを防ぎます。入力検証やセキュアサーバー側の処理などの適切なセキュリティ対策を使用してください。
  • キャッシュの問題:キャッシングの不適切な処理により、古いデータが表示される可能性があります。適切なHTTPヘッダー(例:キャッシュコントロール)を使用して、キャッシュを効果的に管理します。
  • クロスオリジンリソース共有(CORS)問題:別のドメインにリクエストを行う場合、エラーを避けるためにCORを正しく処理する必要があります。サーバーがドメインからのリクエストを許可するように構成されていることを確認してください。
  • メインスレッドのブロック:長期にわたるAJAX操作により、メインスレッドがブロックされ、UIが反応しなくなります。この問題を回避するために、常にそのような操作を非同期に実行してください。 async/await を使用するか、非同期操作を効率的に管理することを約束します。
  • 以上がHTML5でJavaScriptでAJAXを要求する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    著者別の最新記事
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート