Webブラウザが要求を送り,Webサーバーが応答を返す――。Webアクセスを一言で表現すると,こうなる。こうした単純なやりとりの手順や内容を決めているのが,HTTPというプロトコルである。このHTTPがWebアクセスの根幹と言える。
人が読めるテキストをやりとり
アドレス欄にURLを入れてリターン・キーを押すと,WebブラウザはURLで指定されたデータをWebサーバーに要求する。このときWebブラウザがWebサーバーに送るのが,HTTPリクエストである。
HTTPリクエストはテキストで出来上がっていて,人がそのまま読むことができる。通常,このHTTPリクエストは複数行にわたっている。1行が一つの項目になり,それぞれの項目が意味を持っている。つまり,HTTPリクエストの見かけは,個条書きにしたテキスト・ファイルのようなものと考えればよい。
このHTTPリクエストを分解してみると,三つの部分に分けられる。リクエスト行,メッセージ・ヘッダー,エンティティ・ボディである(図8)。
もっとも重要なのは,先頭の1行目に書かれるリクエスト行である。この1行で,Webサーバーにどんな処理をしてほしいかを伝えている。Webシステムが発案された初期のころは,このリクエスト行だけをWebサーバーに送っていたくらいだ。つまり,リクエスト行の内容さえ理解できれば,HTTPリクエストの大まかな内容がわかる。
メッセージ・ヘッダーは,リクエスト行の次に続くテキスト列で,通常は複数行ある。ここには,Webブラウザの種類やバージョン,対応するデータ形式などの付加的な情報が書かれる。
そして,区切りのための空白行のあと,エンティティ・ボディが続く。ここは,WebブラウザからWebサーバーにファイルなどの比較的大きなデータを送るときに用いる部分である。送るデータがないときは使われない。