タイトル: Ajax
本稿はAjaxに関連する記事です。
Ajaxとは
Ajaxとはウェブブラウザ内で非同期通信を行いながらインターフェイスの構築を行うプログラミング手法です。Asynchronous JavaScript + XML の略で、ページ全体を再読み込みせずにサーバーと通信し、結果をDOMに反映できます。
Ajaxの主な用途
- フォーム送信を画面遷移なしで処理
- 入力候補のサジェスト表示
- 無限スクロールやページ単位の追加読み込み
- リアルタイム検索結果の更新
- ファイルアップロードの進捗表示
- 外部APIと連携した動的コンテンツ
本ページの子ページ一覧
- $.ajax() — jQueryで非同期通信を行う基本
- CSVファイルのダウンロード — Ajax 経由でCSVを取得し保存するパターン
jQuery $.ajax の基本
|
$.ajax({ |
fetch APIで書く場合(モダンな書き方)
近年のブラウザでは fetch がjQueryなしで使えます。Promise ベースで async/await と相性が良いです。
|
// 基本 |
POSTでJSONを送る例
|
// jQuery |
ハマりやすいポイント
- CORS — 別ドメインAPIを叩くと
Access-Control-Allow-Origin不足で失敗する。サーバー側でヘッダ設定が必要 - CSRFトークン — Laravel等のフレームワークではPOST時にCSRFトークンが必須
- ファイルアップロード —
FormData+processData:false+contentType:false(jQueryの場合) - 非同期で進める処理順 — success以降に書く処理を
then/awaitで続ける
関連
- 親カテゴリ: jQuery
- JSON処理: JSONから配列に変換
- 関連エラー: Uncaught TypeError: Illegal invocation (Ajaxでファイル送信時)