HTTP総合


HTTP
🎈 定義#テイギ#
ハイパーテキスト転送プロトコル(HTTP)は、htmlのようなハイパーメディアドキュメントを転送するためのアプリケーション層プロトコルである.また,これはWeb上で行われるすべてのデータ交換の基礎である.
WebブラウザとWebサーバ間の通信に使用するように設計されていますが、他の目的でも使用できます.HTTPは無状態プロトコルであり、サーバは2つのリクエスト間のデータを維持しない.例えば、掲示板の作成時にリフレッシュを行うと、2つのリクエスト間の作業は記録されずに消去される.

各個別の要求はサーバに送信され、サーバは要求を処理し、応答と呼ばれる応答を提供する.このリクエストとレスポンスの間には、さまざまなタスクを実行するゲートウェイやキャッシュロールとして機能するエージェントなど、複数のオブジェクトがあります.
HTTPフロー
クライアントがサーバと通信する場合は、次の手順に従います.
1.TCP接続を開く:TCP接続は、要求を送信または受信するために使用される.
2.HTTPメッセージの送信:HTTPメッセージは人間が読むことができる.
GET / HTTP/1.1
Host: developer.mozilla.org
Accept-Language: fr
3.サーバから送信された応答を取得します.
4.接続を閉じるか、他のリクエストに再使用します.
HTTPメッセージ
HTTPベースのAPI
HTTPベースで最も一般的なAPIはXMLHttpRequest APIである.最近、Fetch APIは強力で柔軟な機能を提供しています.
HTTPキャッシュ
キャッシュとは?
特定のリソースのコピーを格納し、リクエスト時にコピーを提供するテクノロジー.
以前に導入したリソースを再利用することで、Webサービスのパフォーマンスを向上させることができます.ネットワークキャッシュは、ネットワークトラフィックと遅延を低減することによって、表示リソースに要する時間を低減する.
HTTP Cookie
HTTP履歴
HTTP 0.9
別名One-Linetrotocol
以前のバージョンにはバージョン番号はありませんでしたが、1.0を区別するために0.9と呼ばれていました.
要求は1行で構成され、GETは唯一利用可能な方法である.
HTTP 1.0
非常に限られた0.9の高速拡張性により、ブラウザとサーバの柔軟性を実現

  • 各リクエスト間でバージョン情報の送信を開始します.

  • ステータス・コード・ラインは、送信、リクエストの成功、失敗、および結果に対する操作を示す応答の先頭にアタッチされます.

  • HTTPハッシュは、要求と応答のために導入され、メタデータの転送を可能にし、プロトコルの柔軟性と拡張性を極めて高めます.

  • htmlファイルではなく、他のドキュメントを転送する機能を追加
  • HTTP 1.1
    あいまいさを明確にし、多くの改善を導入

  • コネクタを再使用することで、使用済みコネクタを再オープンして時間を節約できます.

  • パイプライナーを追加します.第1の要求の応答が完全に送信される前に、第2の要求の送信を許可し、通信遅延を低減する.

  • リクエストされた応答もサポートされます.

  • 追加のキャッシュ制御メカニズムの導入
  • などなど.
    HTTP 1.1は15年以上にわたって極めて高い安定性を保っている.
    HTTP 2.0
    Webページは非常に複雑になり、本格的なアプリケーションにもなります.
    過去と現在の三星電子ギャラクシーのホームページを見ると、以前は表や写真、ビデオなどの比較的簡単なデータをスクロール表示していたが、スクロールするたびに動作を増やし、多くの機能を追加し、作品になることもある.
    また、表示されるビジュアルメディア量に追加すると、インタラクティブを追加するためのスクリプトの数とサイズも多くなります.
    差異

  • テキストプロトコルというよりバイナリプロトコルです.

  • パラレルリクエストは、同じ接続で処理できるマルチプロトコルであり、順序を削除することで制限を阻止します.

  • 伝送データの冗長性と不要なオーバーヘッドを排除しながら、同様のコンテンツで存在するヘッダーを圧縮します.

  • サーバがサーババッファと呼ばれるメカニズムに必要なデータにクライアントキャッシュを予め埋め込むことを可能にする.
  • )