MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
HTTP - HTTPメッセージのソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
HTTP - HTTPメッセージ
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == HTTPは、HTML文書等のリソースを取得するためのプロトコルである。<br> これは、Web上のあらゆるデータ交換の基礎であり、クライアントサーバプロトコルである。<br> <br> つまり、リクエストは受信者(通常はWebブラウザ)によって開始される。<br> 例えば、テキスト、レイアウト記述、画像、動画、スクリプト等、フェッチされた様々なサブドキュメントから完全なドキュメントが再構築される。<br> <br> クライアントとサーバは、(データのストリームとは対照的に)個々のメッセージを交換することによって通信する。<br> クライアント(通常はWebブラウザ)が送信するメッセージはリクエストと呼ばれ、サーバが回答として送るメッセージはレスポンスと呼ばれる。<br> <br> 1990年代初頭に設計されたHTTPは、時代とともに進化してきた拡張可能なプロトコルである。<br> TCP、または、TLSで暗号化されたTCP接続で送信されるアプリケーション層プロトコルであるが、理論的には信頼性の高いトランスポートプロトコルであれば何でも使用できる。<br> その拡張性により、ハイパーテキストドキュメントだけでなく、画像や動画を取り込んだり、HTMLフォームの結果のようにコンテンツをサーバに投稿したりするのにも使用される。<br> <br> また、HTTPはオンデマンドでWebページを更新するために、文書の一部をフェッチするのにも使用される。<br> <br><br> == HTTPの流れ == クライアントがサーバ (最終サーバ、または、中間プロキシ) と通信する場合、以下のような手順で実行される。<br> <br> # TCPコネクションを開く。 #: TCPコネクションは、リクエストを送信して、その回答 (レスポンス) を受信するために使用される。 #: クライアントは、新しいコネクションを開いたり、既存のコネクションを再利用したり、サーバへの複数のTCPコネクションを開いたりすることができる。 # HTTPメッセージを送信する。 #: HTTPメッセージ (HTTP/2以前) は人間が読むことができる。 #: HTTP/2では、これらの単純なメッセージはフレームにカプセル化され、直接読むことは不可能であるが、原理は変化していない。 #: <br> #: <code>GET / HTTP/1.1</code> #: <code>Host: developer.mozilla.org</code> #: <code>Accept-Language: fr</code> #: <br> # サーバから送信されたレスポンスを読む。 #: <br> #: <code>HTTP/1.1 200 OK</code> #: <code>Date: Sat, 09 Oct 2010 14:28:02 GMT</code> #: <code>Server: Apache</code> #: <code>Last-Modified: Tue, 01 Dec 2009 20:18:22 GMT</code> #: <code>ETag: "51142bc1-7449-479b075b2891b"</code> #: <code>Accept-Ranges: bytes</code> #: <code>Content-Length: 29769</code> #: <code>Content-Type: text/html</code> #: <br> #: <!DOCTYPE html>… (here come the 29769 bytes of the requested web page) #: <br> # 接続を閉じる、または、次のリクエストのために再利用する。 <br><br> == HTTPメッセージ == HTTP/1.1以前で定義されたHTTPメッセージは、人間が読むことができる。<br> HTTP/2では、これらのメッセージはフレームというバイナリ構造に埋め込まれ、ヘッダの圧縮や多重化などの最適化が可能になる。<br> <br> 元のHTTPメッセージの一部のみがHTTP/2で送信されたとしても、各メッセージのセマンティクスは変更されず、クライアントは元のHTTP/1.1リクエストを (仮想的に) 再構成する。<br> したがって、HTTP/1.1形式でHTTP/2メッセージを理解することは有用である。<br> <br> HTTPメッセージには、HTTPリクエストとHTTPレスポンスの2種類があり、それぞれ独自の書式をもつ。<br> <br> ==== HTTPリクエストの構成 ==== HTTPリクエストは、以下の要素で構成される。<br> * HTTPメソッド *: GET、POST、DELETE、OPTIONS、HEADがあり、クライアントが実行する操作を定義する。 *: 例えば、クライアントがリソースをフェッチする場合 (GET)、または、HTMLフォームの値をポストする場合 (POST) 等がある。 * フェッチするリソースのパス *: コンテキストから明らかな要素、例えば、プロトコル (<nowiki>http://</nowiki>)、ドメイン (developer.mozilla.org)、TCPポート (80番) を取り除いたリソースのURLである。 * HTTPプロトコルのバージョン * サーバに追加情報を伝えるオプションのヘッダ * POSTのようないくつかのメソッドでは、送信されたリソースを含むレスポンスと似たボディ <br> ==== HTTPレスポンスの構成 ==== HTTPレスポンスは、以下の要素で構成される。<br> * HTTPプロトコルのバージョン * HTTPリクエストが成功したか否か、および、その理由を示すステータスコード * ステータスメッセージ、ステータスコードの非正規の短い説明 * HTTPリクエストと同様のHTTPヘッダ * オプションとして、取得したリソースを含むボディ <br><br> __FORCETOC__ [[カテゴリ:Web]]
HTTP - HTTPメッセージ
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse