ウェブページを やりとりする、HTTP
アドレスばーに じゅうしょを うつと、どうして その ページが がめんに でるのでしょう? 見えない ところで みじかい かいわが いきかいます。ブラウザが 「これ ちょうだい」と たのむと、サーバーが 「はい どうぞ」と わたします。この たのみと わたしの ひとくみが ウェブを うごかす やくそく、HTTP です。
これ ちょうだい、はい どうぞ
まえに TCP の おかげで
データが ぬけなく とどくのを 見ました。
でも その データで
どんな かいわを するのでしょう?
ウェブの かいわは とても かんたんです。
ブラウザが サーバーに
「この ページ ちょうだい」と たのみ、
サーバーが 「はい どうぞ」と わたします。
たのみを ようきゅう、わたしを おうとうと いいます。
ブラウザを おして サーバーに ようきゅうを おくろう。サーバーが おうとうを かえすと ひとくみが できあがります。
ようきゅう ひとつに おうとう ひとつ。
ウェブは この かんたんな くみで うごきます。
ブラウザが さきに はなしかけ、
サーバーは その たのみにだけ こたえます。
サーバーが さきに はなしかける ことは ありません。
いつも たずねる がわと こたえる がわが います。
でも 「これ ちょうだい」 いがいにも
たのみの しゅるいが もっと あります。
つぎに その どうさを 見てみましょう。
ようきゅうに こめる どうさ
すべての ようきゅうには
なにを したいか どうさが つきます。
いちばん おおいのは GET です。
「これ ください」と うけとる どうさです。
ページを ひらく たびに つかうのが GET です。
はんたいに POST が あります。
「これ うけとって」と おくる どうさです。
ぶんを かいたり ログインの じょうほうを おくる ときなど。
うけとれば GET、おくれば POST です。
どうさを おして えらんでみて。GET は うけとる がわ、POST は おくる がわ。それぞれが どちら むきか やじるしで みせます。
GET と POST の ふたつで
ウェブで する ことの ほとんどが せつめいできます。
ページを ひらいて よむのは GET、
なにかを かいて おくるのは POST。
どうさの ほかに おうとうには みじかい しるしが ついてきます。
うまく いけば 200、
そんな ページが なければ 404 の ような すうじです。
せいこうか しっぱいか ひとめで しらせる しるしです。
くわしくは いま しらなくても だいじょうぶ。
まいかい はじめて 見る きゃくの ように
ここに HTTP の みょうな せいかくが あります。
HTTP は ひどい わすれんぼうです。
ようきゅう ひとつが おわると
いま だれが なにを たのんだか すっかり わすれます。
おなじ ひとが にかい きても
HTTP は まいかい はじめて 見る きゃくの ように あつかいます。
「さっき きた かたですよね?」のような きおくが ありません。
こうして すぎた ことを もたない せいしつを
じょうたいが ない、つまり stateless と いいます。
おなじ ひとが にかい ようきゅうを おくってみて。にかいめも サーバーは はじめて 見たように あいさつします。HTTP は すぎた ことを おぼえられません。
にかい きても まいかい はじめての あいさつとは
すこし もどかしく 見えますね。
でも これは わざと そう つくられて います。
サーバーが みんなを おなじく かるく あつかうので
たくさんの きゃくを いちどに うけられるのです。
かわりに 「さっきの ひと」を おぼえるには
べつに ふだを わたさないと いけません。
その ふだが つぎの かいで あう
セッションと クッキーです。
かけらを あつめて 1まいの ページに
1まいの ページは ようきゅう いっかいで
ぜんぶ くるわけでは ありません。
まず ぶんの ほねぐみを GET で うけとります。
なかを 見ると えも、かざりも ひつようだと いいます。
そこで ブラウザが
え ちょうだい、かざり ちょうだいと また たのみます。
ようきゅうと おうとうを なんども やりとりして
かけらを ひとつずつ あつめ
やっと できあがった ページに なります。
かけらを ひとつずつ おして たのんでみて。もじ、え、かざりが おうとうで きて ページが じゅんに うまります。
かけらが ぜんぶ あつまると
あいていた ばしょが いっぱいに なりました。
わたしたちの めには いちどに でたように 見えますが
じつは いくつもの ようきゅうと おうとうが あつまった けっかです。
ほねぐみ ひとつ、え ひとつ、かざり ひとつ。
それぞれ べつに たのみ べつに うけとったのです。
はやい インターネットの おかげで
この すべてが またたく まに おわるので
わたしたちは ただ ページが でたと かんじます。
まとめて みましょう
ひとことに まとめると こうです。
ウェブは ようきゅうと おうとうの ひとくみで うごきます。
ようきゅうには GET(ください)・POST(うけとって)の ような どうさが つきます。
1まいの ページは いくつもの ようきゅうと おうとうで かけらを あつめて つくります。
そして HTTP は ひどい わすれんぼうなので
まいかいの ようきゅうを はじめて 見る きゃくの ように あつかいます。
この かんたんさと わすれんぼうの おかげで
ウェブは かるく だれでも かんたんに つかえます。
それが HTTP の やくそくです。
かなめを じゅんに おして ふりかえって。(ようきゅうと おうとう → GET・POST どうさ → ひどい わすれんぼう → かけらを あつめて ページ)
これで ウェブページが どう
いきかうか わかりました。
でも HTTP の わすれんぼうが
ひとつ しゅくだいを のこしました。
かごに いれた しなものや
ログインした じょうたいは どう おぼえるのでしょう?
まいかい はじめて 見る きゃくなら
それを どう つなげるのでしょう?
その ひみつを つぎの かい、
セッションと クッキーで ときましょう。