2章HTTP/1.0の世界:基本となる4つの要素

_images/ch02_header.jpg

エナジードリンク[1]のデザイン素材として利用されるHTTPのステータスメッセージ

本章では歴史的な変遷とともにHTTPの基本を見ていきます。いまや印刷すれば辞書のようになるほど大きなプロトコル(通信のルール)へと発展したHTTPですが、最初はとてもシンプルなところから出発しています。HTTPを理解するには現在の仕様を頭から読むより、これまで発展してきた歴史をたどって「今なぜHTTPがこのような姿になっているのか」を知る方が全体を理解しやすくなるでしょう。

HTTPをデータの箱として見ると、通信内容をいくつかの要素に分解できます。本章では次の4つの基本要素にフォーカスして紹介します。

  • メソッドとパス

  • フィールド

  • コンテンツ

  • ステータス

また、HTTPを扱うツールとしてcurlコマンドの使い方も紹介します。curlコマンドを利用することで、自分が望んだ通りのリクエストをサーバーに送信できるようになります。PythonやRuby、Node.jsなどのプログラミング言語を利用したことがあれば、REPLと呼ばれるモードのお世話になったことがあるでしょう。それらと同じように、curlをウェブAPIのREPLのように使うことで、サーバーの動作検証をしたり通信プロトコルを説明したりできます。

2.1 HTTPの歴史

HTTPはウェブブラウザとウェブサーバーが通信する時の手順とフォーマットをルール化したものです。ウェブページをブラウザで表示する時の、サーバーから情報をもらう際のルールに関する取り決めですが、その範囲を超えて、翻訳API、データ保存APIなど、さまざまなサービスのインタフェース ...