復習:HTTPの基礎
Coddyの「ターミナルで学ぶネットワーク」コースのレッスン 25/47。
HTTP は、どちらの方向でも固定された形式のテキストです。
リクエストは、メソッド、パス、バージョン、続いてヘッダー、空行、そして任意の本文で構成されます。レスポンスは、バージョンとステータスコード、続いてヘッダー、空行、そして本文で構成されます。
メソッドは操作の種類を示します。GETは読み取りを行い安全でなければならず、POSTは送信し、PUTは保存し、DELETEは削除します。
ステータスコードは処理結果を示し、最初の数字が責任の所在を示します。2xxは成功、3xxは別の場所へ移動、4xxはリクエストに誤りがあり、5xxはサーバーに問題が発生したことを意味します。
headersは本文を説明します。何よりもまずContent-Typeです。そして、これらの要素はすべて手で入力できるものだということを、HTTPが魔法のように感じられる次の機会に思い出す価値があります。
チャレンジ
上級者自分で作成したサーバーから、レスポンス全体を上から下まで読み取ります。
ステータス行が HTTP/1.1 404 Not Found で、Content-Type: text/plain ヘッダーと本文 nothing here を含む手書きのレスポンスを、ポート 9115 で提供します。次に curl を使って、ステータスコードを表示し、その次の行に本文を表示します。
期待される出力:
404
nothing here各
nc -lは1つのクライアントに応答して終了するため、2回目のリクエストの前に2つ目を起動してください。
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ターミナルで学ぶネットワークのすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド