代々木で働く超新米エンジニアの足跡

代々木で働くエンジニアです。超新米です。

AJAX http ヘッダー リクエスト

メモ

・ブラウザはサーバーにHTTPリクエストを送る
・サーバーは受け取ったリクエストからどんな情報を返すか判断する
・HTTPリクエストには「HTTPリクエスト行」「HTTPヘッダー」「データ本体」の3つのパートがある

 ◆HTTPリクエスト行・・・「メソッド」「URL」「HTTPのバージョン」の3つの情報が含まれる
  -メソッド → Webではほとんどの場合「GET」で、この場合、HTTPリクエストでは「データ本体」は送られない
          「POST」の場合は、HTTPヘッダーの後にデータ本体が続きます。
 ◆HTTPヘッダー →
・ユーザーエージェント名(ブラウザの種類やOSの情報。アクセスしているのがブラウザではなく検索エンジン
            クローラの場合、「Googlebot」などの名前が入る)
  ・リファラ(どのページから発生したリクエストなのかをす。)
 
・クッキー(ブラウザに保存されていて毎回サーバーに送られる。ログイン状態を続けられるのは、ログイン時に
       サーバーから送られたクッキーをブラウザが保存しておいて、リクエストの際に送っているから)

・受け取り希望(どんなデータを受け取りたいか、画像の種類や、言語、文字コードなどの希望)


XMLHttpRequest

非同期なデータの通信を実現するための API

非同期なデータの通信は下で説明

AJAX

Ajax(エイジャックス[1][2]、アジャックス[3]、アヤックス[要出典])は、ウェブブラウザ内で非同期通信とインターフェイスの構築などを行う技術の総称[4]。XMLHttpRequest(HTTP通信を行うためのJavaScript組み込みクラス)による非同期通信を利用し、通信結果に応じてダイナミックHTMLで動的にページの一部を書き換えるというアプローチを取る[5]。

Ajax - Wikipedia

Asynchronous = 非同期


  • 説明

Webの地図サービスで考えるとわかりやすい
AJAXは地図サービスサイトで有名になった
以前は、目的地までの地図を表示するときにいちいちページをリロードしていたため時間がかかったが、
AJAXを用いることでいちいちページをリロードせずデータのやりとりができるようになった


  • 同期、非同期

クライアントとサーバー間の通信には同期と非同期のものがある
前者では、クライアントからサーバーにリクエストを送りデータが返ってくるまではなにもできない
後者は、リクエストを出した後データを待たずに動くことができた


名前の通りJavaScriptXMLから成る
非同期通信はJavaScriptを使っている
XMLは返ってきたデータがどの要素なのかを識別するために使われている
非同期通信では返ってくるデータ量が多いのでXMLが必要


参考:いまさら聞けないリッチクライアント技術(3):いまさら聞けない、“Ajax”とは何なのか? (3/3) - @IT