HTTPプロトコルの共通のインタビューの質問

HTTPプロトコルの顔の質問

組成1.http契約

 

要求ライン(リクエストライン)、リクエストヘッダ(ヘッダ)、空白ライン部と4つの要求データ。

HTTP(ハイパーテキスト転送プロトコル)は、ベースと、ステートレスなアプリケーション層プロトコル、通常のTCP接続に基づいて、要求応答モードであります

HTTP1.1バージョンは常時接続のためのメカニズムを与えている、Web開発の大部分は、Webアプリケーションは、HTTPプロトコルの上に構築されています。

 

 2.HTTPリクエストメソッド:

GET、POST、およびHEADメソッド:HTTP1.0の要求は、3つのメソッドを定義します。
HTTP1.1 5つの新しい要求方法:OPTIONS、PUT、DELETE、TRACE、およびCONNECTメソッド。

 

GET     请求指定的页面信息,并返回实体主体。
HEAD     类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
POST     向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
PUT     从客户端向服务器传送的数据取代指定的文档的内容。
DELETE      请求服务器删除指定的页面。
CONNECT     HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
OPTIONS     允许客户端查看服务器的性能。
TRACE     回显服务器收到的请求,主要用于测试或诊断

 

 その差3Getを投稿

サーバーからのリソースへのアクセスのし1.Getフォーカス、サーバーにデータを送信するに焦点を当てたポスト。

2.GETは、データ・パラメータとの間に接続されたURLへの?URL分割及び送信データの後に配置される送信しました

  EditPosts.aspx?名= TEST1&ID = 123456 POSTメソッドは、HTTPパケットボディに提出されたデータであります

3.GET提出されたデータのサイズが(URLの長さにブラウザの制限ために)制限され、POSTメソッドで送信されたデータは、限定されるものではありません。

; 4.getは、URLが表示されているので、安全ではない、パスワードなどとして、個人情報を明らかにすることができる
高いGETセキュリティよりもPOST

 

図4に示すように、HTTPリクエストパケットと応答パケットのフォーマット

要求メッセージは、三つの部分を含む:
A、リクエストライン:含むリクエストメソッド、URI、HTTPバージョン情報
B、リクエストヘッダフィールド
Cは、要求されたコンテンツのエンティティ
応答メッセージは三つの部分を含む:
A、ステータスライン:含むHTTPバージョン、ステータスコード、ステータスコード理由フレーズ
B、レスポンスヘッダフィールドに
応じて、C、コンテンツ実体

図5に示すように、それぞれの共通HTTPステータスコード

1xx: -指示処理を続け、要求を受信したことを示している
の2xx:成功- 、要求が正常に受信されたことを示し理解、受け入れられた
の3xx:リダイレクション-要求を満たすためにさらに一歩行かなければならない
の4xx:クライアントエラーを-構文エラーを要求したり、要求を達成することができない
の5xxを:サーバー側のエラー-サーバーは、正当な要求を達成するために失敗しました

200:要求が正常に処理され
204:要求が受け入れられたが、何のリソースを返すことができない
206:クライアントは、リソースの一部を要求し、サーバが実行するいくつかのリソース要求の唯一のGETメソッド、対応するパケット・リソース・コンテンツ・レンジを介して範囲を指定しました。
301:永久リダイレクト
302:一時的なリダイレクト
303:ステータスコード302は、同様の機能を有するが、URI、GETメソッドが別のURIにリダイレクトすることができるとき、それは望ましいクライアント要求である
304:送信アンタイドリクエスト、復帰条件が成立していないときにかかわらずリダイレクションの
307: POSTメソッド必須用いる以外、一時的なリダイレクト、および類似の302、
400:要求メッセージの構文エラーが、サーバが認識しない
401:要求は、認証が必要
:403要求を対応するリソースへのアクセスを禁止することはある
404:サーバが対応するリソース見つけることができませんでした
:500内部サーバーエラー
503:サーバーがビジー状態

 

図6に示すように、HTTPの欠点HTTPS
  HTTPS HTTP + = SSL

  1、httpsのCA証明書を持って、HTTPは一般的にありません

  図2に示すように、HTTPはハイパーテキスト転送プロトコルは、情報が平文で送信されます。HTTPSは、セキュリティ伝送プロトコルSSLで暗号化されています

  3は、httpデフォルトデフォルトではポート80、HTTPSポート443

HTTPSはHTTPプラス暗号化処理(通常、SSLの安全な通信リンク)+ +完全性保護の認定であります

 

ブラウザのアドレスバーにURLを入力7.、その後、Enterキーを押して、次のプロセスを通過します

1、ブラウザは、IPアドレスに対応するドメイン名を解決するためにDNSサーバへのURLを要求します。

2、IPアドレスが確立されたデフォルトのIPアドレスとポート80、およびサーバに基づいて、解析されたTCP接続

3、などのブラウザの問題HTTPリクエストのリードファイル(ファイルの後部に対応するURLのドメイン名)、要求パケット  TCPスリーウェイハンドシェイクサーバへのデータ・パケットを第三;

図4に示すように、サーバは、ブラウザのリクエストに応答し、ブラウザに対応したHTMLテキストを送信します。

5、解放する  TCPコネクションを

図6に示すように、ブラウザは、HTMLおよびテキストコンテンツを表示します。

 

若しくは

 

 

参考ブログ:

https://www.cnblogs.com/sunny-sl/p/6529830.html

https://www.cnblogs.com/gaozhiqiang/p/11750772.html

https://www.cnblogs.com/ranyonsue/p/5984001.html

おすすめ

転載: www.cnblogs.com/xiaokang01/p/12515617.html