【深】HTTPプロトコル - 1565075570.4519832

オリジナルリンク:http://106.13.73.98/__/80/

HTTPは、略語(ハイパーテキスト転送プロトコル)ハイパーテキスト転送プロトコルです。

HTTPは、World Wide Web Consortium(ワールドワイドウェブコンソーシアム)とインターネットワーキンググループIETF(インターネット技術タスクフォース)の協力の発展の結果であり、(彼らは)最終的にはRFCのシリーズを発行しました。

RFC 1945は、RFC 2616は、今日広く使われているバージョンを定義し、HTTP / 1.0バージョン、最も顕著なのRFC 2616が定義されて--http 1.1

------->

HTTPプロトコル(ハイパーテキスト転送プロトコル)、ハイパーテキスト転送プロトコルは、ローカルブラウザにWWWサーバハイパーテキスト転送プロトコルからの送信のために使用されます。

ネットワークトラフィックが減少するようにそれは、ブラウザをより効率的にすることができます。それは、コンピュータが正常にかつ迅速にハイパーテキスト文書を転送していることを確認しないと、文書はまた、送信のどの部分を決定し、どのように最初の(このような従来のグラフィックス、テキストなど)のショーの一部だけではなく。

@

HTTP応答モデルは

HTTPプロトコルが常にクライアントの要求によって開始され、以下に示すように、サーバは、バックレスポンスを送信します
ここに画像を挿入説明
。これは、HTTPプロトコルの使用を制限し、クライアントが要求を開始しなかったときに達成することができない、サーバーはクライアントにメッセージをプッシュします。

HTTPワークフロー

一次HTTP操作称为一个事务自分の仕事のコースは、4つのステップに分けることができます。

  1. まず、クライアントとサーバは接続を確立する必要があります。ただ、ハイパーリンクをクリックして、HTTPの作業が始まりました。
  2. 接続が確立された後、クライアントがサーバに要求を送信し、リクエスト形式を意味します統一リソース識別子(URL)、プロトコルバージョンは、
    MIMEの背後にある(文のテキスト情報)情報は、リクエスト修飾子、クライアント情報と可能性を含んでいますコンテンツ。
  3. 要求に応じて、サーバは、対応する応答情報、プロトコルバージョン番号情報、成功またはエラー・コードを含むステータス行の形式を得た
    バックをMIME情報は、サーバ情報、エンティティ情報および可能なコンテンツを含んでいます。
  4. クライアントは、サーバーと、表示画面上でユーザによって返された情報を受信し、クライアントはブラウザを介してサーバーから切断します。


エラーが複数ステップの過程で発生した場合、エラーメッセージが表示出力によってクライアントに返されます。
ユーザーの場合、これらのプロセスは、HTTP自身によって行われ、ユーザは、単にクリックして、情報を待つために、マウスを使用しますそれを示しています。
***

HTTPリクエスト

HTTPリクエストメソッドDaquanの
いいえ。 方法 説明
1 取得する リクエストページ情報が指定され、エンティティボディを返します。
2 同様の要求を取得するが、応答はヘッダを得るために、特定のコンテンツに返されていません
3 役職 処理要求指定されたリソース(例えば、ファイル送信フォームまたはアップロード)にデータを送信します。リクエストボディに含まれるデータ。POSTリクエストは、新しいリソースにおよび/または既存のリソースを確立するために改訂することがあります。
4 プット 文書の内容を交換するために指定されたクライアントからサーバに送信されたデータ。
5 DELETE 指定されたページを削除するには、サーバーを要求します。
6 CONNECT HTTP / 1.1プロトコルは、プロキシサーバのパイプラインモードへの接続のために予約することができます。
7 OPTIONS これは、クライアントがサーバーのパフォーマンスを表示することができます。
8 トレース エコー要求は、主にテストや診断のために、サーバーが受信しました。
9 パッチ エンティティテーブルを備え、テーブルは、元のURIの内容に違いが示さ示します。
10 MOVE サーバーは、別のウェブアドレスに指定されたページを要求します。
11 COPY ネットワークアドレスで指定されたページの別のコピーへの要求サーバー。
12 リンク リンク関係を確立するためにサーバーを要求します。
13 UNLINK 関係のリンクを解除します。
14 WRAPPED これは、クライアントがパッケージを介してリクエストを送信することができます。
15 拡張-mothed プロトコルを変更することなく、他の方法を向上させることができます。
HTTPリクエストは、


客户端连上服务器后,向服务器请求某个Web资源,称之为客户端向服务器发送了一个HTTP请求.

一个完整的HTTP请求包括的内容:一个请求行、若干消息头、实体内容

下:
ここに画像を挿入説明

詳細HTTPリクエスト - リクエストヘッダ


リクエストラインがGETリクエストメソッドと呼ばれ、リクエストの方法があります:POSTは、GET、HEAD、OPTIONS 、DELETE、TRACE、PUT、 一般的に使用されている:POST、GET
-
設定されていない場合は、サーバーに、ユーザーがデフォルトのブラウザをリクエストが送信され、例えば、直接ブラウザにアクセスアドレスを失うGET、ハイパーリンクのアクセスポイントが全てですなユーザーとして、GET方法のPOSTリクエストを変更したいを通じて提出の形を達成するために変更することができます。
*
かどうかPOSTまたはGET、 WEBサーバのリソースを要求するために使用され、これらの2つの方法の間の差は主にデータ転送に反映される:?リクエストメソッドがメソッドがGETである場合、URLアドレス要求のデータ・サーバにフォームをもたらすことが可能です、&例えば、分離されたデータのうち:HTTP / 1.1 /mail/1.html?name=abc&password=xyz GET

GET请求的特点:在URL地址后附带的参数是有限制的,其数据容量通常不能超过1K

リクエストモードは、サーバPOSTメソッド要求エンティティコンテンツに送ることができる場合機能データ、ポスト方式:転送されるデータの量は無制限。

詳細HTTP要求 - メッセージヘッダー


Accept
ステートメントブラウザーサポートされているデータ・タイプ

Accept-Charset
ステートメントのブラウザでサポートされている文字を設定します
。・
Accept-Encoding
ステートメントのブラウザは圧縮形式をサポート

Accept-Language
ステートメントブラウザのロケール

Host
ステートメントブラウザはそのホストにアクセスする
-
If-Modified-since
宣言時、ブラウザのキャッシュデータを

Referer
ステートメントセキュリティチェーンのためのクライアントにどのページ
-
Connection
ブラウザは、要求が壊れたリンクや維持、リンクされた後、頭部を介してサーバに指示します
。・
X-Requested-with: XMLHttpRequest
代表は、AJAXを経由してアクセスする
-
User-Agent
キャリア要求のID、ブラウザの識別

より以下に示すように、それは、HTTPリクエストヘッダで使用され:
ここに画像を挿入説明
***

HTTPレスポンス

含むHTTPレスポンス


クライアントへのサーバーの代わりにHTTPレスポンスデータをバックエンドを送信します。
它包括:一个状态行、若干消息头、以及实体内容.
ここに画像を挿入説明

詳細HTTPレスポンス - ステータス行


ステータス行フォーマット
HTTP/1.1 200 OK説明HTTPステータスコードバージョンの理由<CRLF>

ステータス・コードは、サーバーへの要求の処理結果を示すために使用される。
ステータスコード3桁の10進数で、応答ステータスコードは、5つのカテゴリーに分割されている。
ここに画像を挿入説明

一般的なHTTPステータス・コード

100 客户端应继续发送请求
クライアントの残りの部分は、クライアントが要求を送信し続ける必要があり、要求を送信し続ける必要があります。
または、要求が完了した場合、応答は無視されます。

101 转换协议
最後に空の行の応答の送信後、サーバーは、メッセージのアップグレードに切り替わります頭の中で定義された。これらのプロトコル
、それは同様の措置をとる必要がある場合。唯一の新しい契約に切り替えるには、より有益である
。・
102 继续处理
ステータスコードのWebDAVの(RFC 2518)の拡張によって、要求は代表が継続されます。

200 请求成功
この要求を表明成功の実装
処理:処理のために、応答の内容を取得します。

201 请求完成
このリクエストの実行が完了した表現
結果は、新しいリソース、新しく固体応じて利用可能作成したURLのリソースの作成である。
治療は内爬虫類ではありません経験。

202 请求被接受
要求が受け入れられているが、プロセスが完了していない。
処分:閉塞待ち。

204 服务器以实现请求
サーバーが要求を満たしていますが、新しいを返しませんでした 情報
クライアントは、ユーザエージェントがアップデート、ドキュメントビューのために必要とされていない場合には。
処分:捨てる

300
。ステータスコードは単にデフォルトの解釈3XX応答タイプとして、要求された利用可能なリソースが複数存在する、HTTP / 1.0のアプリケーションに直接使用されていない
処理方法:プログラムを処理することができれば、さらに処理;プログラムができない場合処理、破棄
-
301 永久重定向
あなたが将来的にURLでこのリソースにアクセスできるように、リソースへの要求は、恒久的なURLが割り当てられている。
処分:永久的なリダイレクトを割り当てられたURLにリダイレクト

302 临时重定向
リソースへの要求一時的に別のURLに格納されている。
治療:URLへの一時的なリダイレクト、一時的なリダイレクト

304 请求的资源未更新
。要求されたリソースが更新されていない
ローカルキャッシュファイル(リクエストが送信されません)を使用。
治療:破棄

400 非法请求
治療: 。破棄

401 未授权
治療:破棄

403 禁止
治療:破棄

404 没有找到
処理:廃棄された。

500 服务器内部错误
サーバがリクエストの処理を完了できない原因となる予期しない状況に遭遇しました。
エラーは、サーバー側のソースコードで発生し、一般的にこの問題をイベント。
これは、サーバーの問題、コードのロジックの問題である。

501 服务器无法识别
サーバは、現在の必要性のための機能要求をサポートしていません。
とき、サーバなし 場合リソースに対するすべての要求をサポートしません識別要求プロセス、方法。
*
502 错误网关
ゲートウェイまたはプロキシサーバは、要求された作業を実行しようとして、サーバーが無効な応答を上流側から受信します。

HTTPレスポンス詳細 - 共通レスポンスヘッダー


Location
ヘッドを介してサーバ、どこにジャンプするようにブラウザに指示する
。・
Server
宣言・サーバ・モデル

Content-Encoding
ヘッドを介してサーバー、ブラウザを語って、圧縮されたデータ・フォーマット

Content-Length
ステートメントサーバはデータの長さを返します
-
Content-Language
サーバー頭を通じて、ブラウザの言語を伝えます環境

Content-Type
ステートメントのサーバーは、データのタイプを返します
-
Refresh
定期的に更新し、ブラウザを語って、ヘッドを介してサーバーを

Content-Disposition
ヘッドを介してサーバーには、ブラウザを伝えることは、オープンデータをダウンロードする
-
Transfer-Encoding
サーバーをヘッドを通して、ブラウザのデータを伝える方法ループバックをブロックしています

Expires: -1
制御キャッシュしていないブラウザ

Cache-Control: no-cache
よります。http://tools.jb51.net/table/http_header
Pragma: no-cache


おすすめ

転載: www.cnblogs.com/gqy02/p/11309099.html