02 | HTTPは何ですか?どのようなHTTPではありませんか?


説明「パースペクティブのHTTPプロトコルは、」私は、参照のみを目的として、ノートを勉強何オタクがレッスンの列を開く時、記録の羅Jianfeng(Qihooは360人の技術専門家)です。

まず第一に、私はこの質問をする必要があります:「あなたはそれがHTTPは何だと思いますか?」

あなたはためらうことなく、口走っかもしれません: "HTTPは、ハイパーテキスト転送プロトコルであるH yper T EXT  T ransfer  Pの rotocol。"

答えは正しかったです!心からあなたを祝福し、私が持っている:あなたはこの答えを与えることができ、あなたは少なくとも50%のHTTP関連の知識ベース、だった「半分の専門家」として見なされるべきであることを示さなければなりません。

しかし、聞かせての変更対話シーンは、私がいないと仮定し、ちょうど面接で質問を尋ねますか?

もちろん、答えはなく、彼の満足に、少し単純すぎる、彼は再びあなたにいくつか質問をします:

どのようにして、文字通り「ハイパーテキスト」と「移転契約を」HTTPを理解していますか?

あなたは、HTTPのご理解について話すことができますか?より多くの、より良いです。

HTTPの特徴は何ですか?長所と短所は何ですか?

基本的なHTTPプロトコルとは何ですか?それがどのように動作しますか?

......

ほぼすべてのHTTP関連の問題を取材するように求められたら、「HTTPとは?」のリードアウトから、最もシンプルにすることができます。

だから、ここから今日の話題は、解答までの深さは、「HTTP 何?ある拡張の第二の問題」、そして「HTTP やものではありませんか?

HTTPとは何ですか

我々中国人は人の人格を意味し、文字が彼の名前と一致している「彼女は呼ばれていたように、」ことわざがあります。

「:HTTP名を見て、ハイパーテキスト転送プロトコル三つの部分、すなわちに分割することができます」、「ハイパーテキスト」、「輸送」「と合意。」私たちはHTTPが何であるかを理解し、これら三つの言葉を理解するために、戻ってから一つずつ解決しました。

 

まず、HTTPであるプロトコルしかし、契約はそれは何ですか?

実際には、「契約は」コンピュータの世界に限定されるものではなく、現実の生活はどこでも見ることができます。アパートを探すときにたとえば、あなたが副署するときだけ「賃貸契約」によって副署「三者合意」、卒業し、会社の新入社員でもある可能性も、「自分のしてソフトウェアの仕事の様々な使用される「秘密保持契約」を、副署しますライセンス契約。」

ただ、これらは、HTTPは本質的に同じである「プロトコル」であると述べ、その後、「本契約」は、それの特徴は何ですか?

まず、プロトコルは、2人の以上の参加者、すなわちなければなりません「協会。」

場合のみ、あなただけでは、その後、あなたが他の人に干渉しない、再生する方法を再生する方法のようなものは何でも自然を、やりたいことがあり、他の人々は、いわゆる必要はありません、あなたの邪魔にならない「合意は。」あなたが二つ以上の参加者が表示されたらしかし、最も基本的なの円滑な交換を確実にするためには、契約が自然に出てきます。

たとえば、参加者が3あり、あなたの成功の雇用を確保するために、「三者合意」:あなた、企業や学校、あなたがよく滞在を確実にするために、参加者は2を持っている「賃貸契約」:あなたと家主を。

第二に、契約は、ある参加者の慣習や規範の行為であり、「会議は。」

協定手段共通の目的を達成するために、より多くの参加者が一緒にそこに立っていたされていることを、明確通信に加えて、あなたは明確に「当事者の責任、権利及び利益を定義しなければなりませんが、やることに合意しました最初に何をすべきか、間違った操作を行う方法、ようにそこには救済されない、と後に行うにはない何か、何をすべきか。たとえば、「賃貸契約」レーンは、リース期間の何ヶ月は、毎月の家賃の数は、どのくらいの預金がどのように、合意された、不遵守に対処する方法を支払うことになるのユーティリティは、のようにする必要があります。

さて、ここで、あなたは、HTTPの最初の層の意味を理解することができるはずです。

HTTPは、コンピュータの世界契約で使用されています。コンピュータ言語仕様は、コンピュータや各種関連する制御及びエラー処理の間の通信交換を確立することを理解することができます。

次は、私たちは、第二部でリテラルHTTPを見て:「転送」。

コンピュータとオンラインの世界では、無数の様々な役割があります:CPU、メモリ、バス、ディスク、オペレーティングシステム、ブラウザ、ゲートウェイ、サーバは、これらの役割の間でも様々なを持っているにバインドされて......お互いにさまざまなプロトコルを伝えます使用は、そうで放送プロトコル、アドレス指定プロトコル、ルーティングプロトコル、トンネリングプロトコル、選挙プロトコルとして、また異なっています。

HTTP「された譲渡契約」、いわゆる「転送」(転送)は実際には非常によく理解され、物事の束は、点A点Bから移動することで、または、「A <ある点A点Bから移動=== > B」。

この単純なアクションを過小評価してはいけない、それはまた、少なくとも二つの重要な情報が含まれています。

最初のポイントは、HTTPプロトコルは、「ある双方向合意。」

つまり、AとBのデータの代わりに、双方向、一方向の流れとの間の端を開始する二つの基本的な参加者AとB、BからAには存在します。転送操作が呼び出される前に、我々は通常、開始要求元を受け取った送信がB-呼び出された後に、応答または応答をここでは、例として、ブラウザはパーティAは、網易は、シーナこれらのサイトは、レスポンダBである要求しているここで最も一般的なインターネットサーフィンを取ります HTTPプロトコルで通信することに合意した双方は、ブラウザは、サイト、サイトにいくつかのデータを送信してから、画面上の最後のショーは、あなたがビデオ、興味深いニュースのすべての種類を見ることができますブラウザにいくつかのデータバックを送信します。

第二に、データは、AとBが、中央の「トランジット」または許可なし制限のみ2文字AとBの間で送信されるが、「リレー」。

したがって、 "A <===> B" からの送信モード、Bに送信処理Aは、任意の数で存在していてもよい、 "A <=> X <=> Y <=> Z <=> B" となりました「仲介」、およびこれらの仲買人は、彼らはあなたは、などのセキュリティ認証、データ圧縮、トランスコーディング、などの追加機能を追加、全体の輸送プロセスを最適化することができ、基本的なデータ転送を邪魔しない、また、HTTPプロトコルに準拠しています。

ここでは、ほとんどのHTTPの第2層の意味を理解することができるはずです。

HTTPは、コンピュータの世界では2点間のデータを調整して転送するように設計慣例です。

完成し「合意」と「転送」、そして今、我々は最終的に、文字通りHTTPの3番目の部分に到着した:「ハイパーテキスト。」

HTTPは、「譲渡契約」であるので、それはそれが何であるかを最終的に「ハイパーテキスト」を送信しますか?私はさらに二つの点で説明しました。

いわゆる「テキスト」(テキスト)、そのHTTPトランスポートは、トークン化バイナリパッケージ(データグラム)で、これらの混沌の基礎となるTCP / UDPプロトコルではなく、完全な、意味のあるデータは、そう、ブラウザ、サーバー、できることを意味上位層アプリケーション処理。

初期のインターネットでは、「テキスト」だけのシンプルなテキスト文字であるが、本に、「テキスト」を意味することは大いに画像、オーディオ、ビデオ、さらには圧縮されたが、HTTPの目にカウントすることができ、拡張されました「テキスト。」

いわゆる「ハイパーテキスト」テキスト、画像、音声、およびビデオの混合物である、「テキスト通常のテキストを超えて」、最も重要であるが、他に「ハイパーテキスト」からジャンプすることができ、「ハイパーリンク」を含んでいますメッシュ構造の間の複雑な非線形な関係を形成するために、「ハイパーテキスト」。

「ハイパーテキスト、」我々は、それはHTMLでなければなりませんに最も精通しており、それ自体は単なるテキストファイルですが、内部はラベルの多いなどの画像、オーディオ、ビデオ、へのリンクを定義し、その後、ブラウザの解釈を通じて、私たちに提示されますオーディオビジュアルのさまざまな情報が含まれていますフロントページ。

OK、HTTPの観点から3の詳細な説明の後、あなたは面接に直面している次回は、それはより多くの「ハイパーテキスト転送プロトコル」より7つの言葉より正確な答えより技術的なコンテンツを与えることができます。 「HTTPは、二つの点や規範世界のテキスト、画像、音声、ビデオ、および他のコンピュータのハイパーテキストデータ伝送の間に特別な契約があります。」

HTTPではありません

今、あなたは「というHTTP とは何ですか?」より明確に理解しておく必要があり、質問が続いている「HTTPはないですか?」、同等の質問は、「HTTPを行うことはできません?。」それについて考え、あなたが出て答えることができますか?

HTTPプロトコルの仕様であるため、それは、コンピュータ間の通信である「別個のエンティティ」は存在しませんこれは、ブラウザ、そのような携帯電話APPアプリケーションではありません、Windowsは、ないオペレーティングシステムのLinuxが、そうではないのApache、Nginxは、TomcatなどのWebサーバー。

密接なネットワーク接続、ダイナミックハイパーテキストデータ伝送の「時間に発生し、HTTPアプリケーション、オペレーティングシステム、Webサーバ、それらの間の通信プロセスの存在下で、および「ダイナミック存在」に関連していますプロセス。 "

HTTPは、インターネットではありません

インターネット(インターネット)は、リソースのすべての種類とその上に格納されて形成された多数の相互接続されたグローバルネットワークを介して巨大な国際ネットワークであるだけでなく、そのようなHTTPを使用してハイパーテキスト・リソースなどのプロトコルの様々な対応します通常のファイルFTP、SMTPとPOP3電子メールの使用を使用してのように。

しかし、HTTPは、インターネットを構築するために、パズルの重要な部分ですが、また、そのパイの最大スライスを占め、疑いの余地はありません。

HTTPは、プログラミング言語ではありません

言語のプログラミングの人々がコンピュータと通信するためのコンピュータと通信するために使用し、HTTP言語がコンピュータ言語であるが、我々はプログラミングにHTTPを使用することはできませんが、HTTPを実装するためのプログラミング言語で反転させることができ、HTTPを使用する方法をコンピュータに指示し、外部通信。

多くの一般的なプログラミング言語は、JavaのTomcatの中で書かれたWebサービスなどのHTTP関連のサービスやアプリケーションの作成をサポートし、ページテンプレートのPHPの使用が必要になります場合は、それらの前ではJavaScriptを使用して、動的ページ更新を達成するために、バックエンドの実装をレンダリング何の12種類?

HTTPは、HTMLではない、次の2つが、多くの場合、同時に発生するものの、HTTPとHTMLを混同しないように、特にこれを強調したいことがあります。

HTMLは、ハイパーテキストのキャリアであるラベルの説明テキスト、画像、ハイパーリンクや他のさまざまなリソースを使用して、マークアップ言語であり、かつ複雑な動的な効果を達成するためにCSS、JavaScriptやその他の技術を埋め込むことができます。単一の番号で、最も可能性の高いインターネットHTTPトランスポート上ではHTMLですが、データの量に、HTMLは次の行、画像、オーディオ、ビデオであるかもしれない場合、リソースのこれらの種類は明らかに大きいです。

HTTPは、単離されたプロトコルではありません

諺にように、「二頭が優れている」、HTTPなども。

インターネットの世界では、通常、IPプロトコル、信頼性の高いデータ伝送のためのTCPプロトコル、安全な通信のためのDNSドメイン名のルックアッププロトコル、SSL / TLSプロトコルに対処し、ルーティングに依存している、TCP / IPプロトコルスタックの上で動作するHTTP。加えて、いくつかのプロトコルは、HTTP、例えば用WebSocket、HTTPDNS等に依存しています。これらの契約は、ネットワークプロトコルを形成する、絡み合っており、HTTPは、中心位置にあります。

概要

HTTPプロトコルは、コンピュータや各種関連する制御及びエラー処理との間の通信の確立規範交換つまり、コンピュータの世界で使用されています。

二点の間でデータを転送するように設計HTTPは、アドレッシングやルーティング、ブロードキャストのために使用することができません。

HTTPハイパーテキストデータの転送は、テキスト、画像、音声、ビデオ、およびそうです。

HTTPは、インターネットを構築するための重要な基盤技術である、達成するための他の技術の数に依存何ら実体、ではありませんが、多くはまた、その技術に依存しています。

(PHPを模倣する)再帰的頭字語の方法を使用して、それらを一緒に入れて、私たちは以下のように定義HTTP置くことができ、「HTTPプロトコルに関連付けられているすべてのアプリケーションレイヤ技術の合計を。」

ここで私は、このコラムのシリーズの「知識マップ」とみなすことができ、マインドマップを描きます。

 

あなたはこの奇妙なの一部である絵、部品が慣れているを見、そしてどの部分あなたは、私がこの絵を詳細に説明します次の話についてもっと知りたいを制御することができます。

職場でのレッスン

「HTTPがインターネットサーバーからローカルブラウザ協定へのハイパーテキスト転送に使用される」、あなたはこの文は正しいと思いますか:人気のことわざがありますか?彼らは間違っていたどこに?

あなたは、いくつかが行う「HTTPではありません」と言ってもらえますか?

おすすめ

転載: www.cnblogs.com/wxcx/p/12513844.html