緑の札には、たしかに200と書かれていた。
受付の鐘も鳴った。けれど、返ってきたのは夕焼けの続きではない。青い入口と、三つの案内ボタンだけのページだった。
イトは、空になった一枚めのお願いの券を握った。残りは一枚。時計は四十秒。
イト
成功って出たのに、どうして見たい場面じゃないの?
ピコ
その200は、イトが頼んだことには成功しているよ
イト
頼んだこと……?
机の上には、イトがあの封筒に入れて送った一通めが残っていた。書いてあるのは GET / だけ。見つけたばかりの練習サーバーへ、イトが選んだのはいちばん短い入口だった。サーバーは、その入口のページを正しく返したのだ。
HTTPは、宛先の先で「何をするか」を伝える
さっき、イトは名前から宛先を確かめた。けれど、同じサーバーにも、入口、各話、絵、見た目のルールなど、別々の対象がある。だからお願いの券には、何をしてほしいかと、どれにしてほしいかを書く。一通めのはじめの三文字は、受け取りたいという合図。その後ろの斜めの線一本は、サーバーの入口を指していた。
ユイ
住所が合ってても、その中のどれを頼むかは別なんだ
マコト
図書館へ着いただけでは、読みたい本を頼んだことにならないのと似ているね
リクエストとレスポンスに入るもの
ピコが一通めを、左右に開いた。「左が、ブラウザからサーバーへ進むお願い。リクエストっていうんだ。右が、サーバーから戻る返事。こっちはレスポンスだよ」
イトは、右の返事を裏返した。表は、成功を知らせる200。裏にあったのは、入口ページだった。壊れた返事ではない。サーバーは、頼まれたとおりに入口ページを返す仕事を終えている。
残り一枚で、何を頼む?
入口ページの中から、二つの道が浮かび上がった。一つは、夕焼けの絵への道。もう一つは、台詞と場面の順番が入った、続きのページへの道。
残り三十秒。
案内台に、三つの選択が現れた。200が出たのだから、入口ページで成功とする。夕焼けの絵だけを頼む。続きのページを頼む。二つめなら、見覚えのある夕焼けは手に入る。けれどイトが知りたいのは、仮面が外れたあとに何が起きるかだ。絵だけでは、台詞も場面の順番も分からない。三つめは、残った一枚を使う。対象をまた間違えれば、今日はやり直せない。
ピコは答えを言わず、二つの道の札を照らした。
イトは、入口ページの200札を机へ置いた。「ぼくが欲しいのは、夕焼けの絵だけじゃない」
続きのページへの道についた案内を、一文字ずつ確かめる。「台詞まで入った、このページ」
イトは最後の券に GET /episodes/last-scene を組み、送信台へ差し込んだ。

二枚目の200は、同じ数字で違う中身だった
サーバーの受付が、対象を読み取った。残り十一秒。
青い返事が戻ってくる。その表にも、同じ200が光っていた。けれど、中身はちがう。入っていたのは、続きのページだ。材料読取台に、探していた一行が現れた。
「夕焼けのあとで、主人公は振り返った。」
運んできた夕焼けの一枚の、すぐ次だ。
一行の下には、台詞の続きと、夕焼けの絵への道、見た目のルールへの道が並んでいる。イトは、二枚の200を横に置いた。最初は入口ページへの成功。二枚めは続きのページへの成功。数字が同じでも、選んだ対象がちがえば、返る中身もちがう。
時計がゼロになった。
HTMLが届いても、夕焼けはまだ描かれない
正しいページは届いた。それでも画面は、白い骨組みのままだった。台詞の場所。見た目のルールを結びつける印。そして、画像を置く四角。イトの腕の空の枠と、同じ形だった。材料への道は読めるが、夕焼けの色はない。
イトの足元で、使い終えた二枚の券が透明になった。一枚めを使わなければ、もっと早かった。けれど、一枚めが失敗だったわけではないことも分かった。間違っていたのは返事ではなく、イトが最初に選んだ対象と、自分の目的のずれだった。
「材料は合ってる。でも、まだ場面になってない」
イトが、届いた骨組みを持ち上げる。画像の四角から、夕焼け色の光が細く漏れた。
その光の先で、ブラウザ工房の歯車が回り始める。
次回:材料はどう画面になる?
返事の封筒の中に、できあがった画面は入っていない。入っているのは、ばらばらの材料だ。
材料がぜんぶ届けば、画面はすぐに出るのだろうか。
返事の番号は、200のほかにもあります。404や500が何を知らせるのかは、HTTPとはの「HTTPレスポンスの中身」の節で確かめられます。

