ホームページ  >  記事  >  Java  >  2023 年の Java インターンの就職面接の質問 - HTTP および HTTPS プロトコル

2023 年の Java インターンの就職面接の質問 - HTTP および HTTPS プロトコル

王林
王林転載
2020-10-30 16:38:373224ブラウズ

2023 年の Java インターンの就職面接の質問 - HTTP および HTTPS プロトコル

1. HTTP の概要

HTTP プロトコルは、Hyper Text Transfer Protocol の略称です。 HTTP プロトコルはクライアント/サーバー アーキテクチャで動作します。ブラウザは HTTP クライアントとして、URL を介してすべてのリクエストを HTTP サーバー、つまり WEB サーバーに送信します。 Webサーバーは、受信したリクエストに基づいて応答情報をクライアントに送信します。

(ビデオチュートリアル共有: java コース)

2. HTTP プロトコルの特性

接続なし: 接続なしの意味は、各接続を制限することです。リクエストを処理するだけです。サーバーはクライアントの要求を処理し、クライアントの応答を受信した後、接続を切断します。この方法により、送信時間が節約されます。
ステートレス: HTTP プロトコルはステートレス プロトコルです。ステートレスとは、プロトコルにトランザクション処理のためのメモリ機能がないことを意味します。ステータスがないということは、後続の処理で以前の情報が必要な場合にその情報を再送信する必要があることを意味し、その結果、接続ごとに転送されるデータ量が増加する可能性があります。一方、事前の情報が必要ない場合、サーバーはより速く応答します。

3. HTTP ステータス コード

1xx: 指示情報 – リクエストが受信されたことを示し、処理を続行します。
2xx: 成功 – リクエストが正常に受信され、理解されたことを示し、受け入れられました
3xx: リダイレクト – リクエストを完了するにはさらにアクションが必要です
4xx: クライアント エラー – リクエストに構文エラーがあるか、リクエストを実行できません
5xx: サーバー側エラー – サーバーは要求を実行できませんでした正当なリクエストを実行する

一般的なステータス コード:

200 OK                     //客户端请求成功
400 Bad Request            //客户端请求有语法错误,不能被服务器所理解
401 Unauthorized           //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用 
403 Forbidden              //服务器收到请求,但是拒绝提供服务
404 Not Found              //请求资源不存在,eg:输入了错误的URL
500 Internal Server Error  //服务器发生不可预期的错误
503 Server Unavailable     //服务器当前不能处理客户端的请求,一段时间后可能恢复正常

4. HTTP の仕組み

HTTP プロトコルは、Web クライアントが Web サーバーから Web ページをリクエストする方法を定義します。サーバーが Web ページをクライアントに送信する方法。 HTTP プロトコルは要求/応答モデルを使用します。クライアントは、リクエスト メソッド、URL、プロトコル バージョン、リクエスト ヘッダー、およびリクエスト データを含むリクエスト メッセージをサーバーに送信します。サーバーは、プロトコルのバージョン、成功またはエラー コード、サーバー情報、応答ヘッダー、および応答データを含むステータス行で応答します。
以下は HTTP リクエスト/レスポンスの手順です:
1. クライアントが Web サーバーに接続します
HTTP クライアント (通常はブラウザ) は、Web サーバーの HTTP ポートを使用して TCP を確立します (デフォルトは80) ソケット接続。たとえば、http://www.baidu.con などです。
2. HTTP リクエストの送信
TCP ソケットを介して、クライアントは Web サーバーにテキスト リクエスト メッセージを送信します。リクエスト メッセージは、リクエスト行、リクエスト ヘッダー、空行、リクエスト データの 4 つの部分で構成されます。
3. サーバーはリクエストを受け入れ、HTTP レスポンスを返します。
Web サーバーはリクエストを解析し、リクエストされたリソースを見つけます。サーバーはリソースのコピーを TCP ソケットに書き込み、クライアントがそれを読み取ります。応答は、ステータス行、応答ヘッダー、空行、応答データの 4 つの部分で構成されます。

(推奨される関連するインタビューの質問: java インタビューの質問と回答 )

4. 接続 TCP 接続を解放します
接続モードがクローズの場合、サーバーはアクティブにTCP 接続を閉じると、クライアントは受動的に接続を閉じて TCP 接続を解放します。接続モードがキープアライブの場合、接続は一定期間維持され、この間リクエストは引き続き受信できます。##5.クライアント ブラウザは HTML コンテンツを解析します。
クライアント ブラウザは、まずステータス ラインを解析して、リクエストが成功したかどうかを示すステータス コードを調べます。次に、各応答ヘッダーが解析され、応答ヘッダーは後続の HTML ドキュメントに数バイトとドキュメントの文字セットを伝えます。クライアントのブラウザは、応答データ HTML を読み取り、HTML の構文に従ってフォーマットし、ブラウザ ウィンドウに表示します。
例: ブラウザのアドレス バーに URL を入力して Enter キーを押すと、次のプロセスが実行されます:
1. ブラウザは、URL 内のドメイン名に対応する IP アドレスを解決するように DNS サーバーに要求します。 ;
2 、IP アドレスを解析した後、IP アドレスとデフォルトのポート 80 に基づいてサーバーとの TCP 接続を確立します;
3。ブラウザは、ファイル (対応するファイル) を読み取るための HTTP リクエストを発行します。 URL のドメイン名の後の部分)、リクエストのレポートテキストは、TCP スリーウェイ ハンドシェイクの 3 番目のメッセージのデータとしてサーバーに送信されます;
4. サーバーはブラウザのリクエストに応答し、対応する HTML テキストをブラウザに送信します;
5. TCP 接続を解放します;
6. ブラウザは HTML テキストを変換し、コンテンツを表示します;

5. HTTP と HTTP の違いは何ですか? HTTPS

HTTPS: セキュリティを目的とした HTTP チャネルです。簡単に言うと HTTP です。セキュア版は HTTP の下に SSL 層を追加します。HTTPS のセキュリティ基盤は SSL です。暗号化にはSSLが必要です。

HTTPS プロトコルの主な機能は 2 種類に分類できます: 1 つはデータ送信の安全性を確保するための情報セキュリティ チャネルを確立すること、もう 1 つは Web サイトの信頼性を確認することです。
HTTPS と HTTP の主な違いは次のとおりです:
1. https プロトコルでは、ca から証明書を申請する必要がありますが、一般に無料の証明書が少ないため、一定の料金が必要です。
2. http はハイパーテキスト転送プロトコルであり、情報は平文で送信されますが、https は安全な SSL 暗号化送信プロトコルです。
3. http と https はまったく異なる接続方法を使用し、使用するポートも異なります。前者は 80、後者は 443 です。
4. http 接続は非常にシンプルでステートレスです。HTTPS プロトコルは、SSL HTTP プロトコルから構築されたネットワーク プロトコルで、暗号化された送信と ID 認証を実行でき、http プロトコルよりも安全です。

6. HTTPS のセキュリティはどのように実装されていますか?

2023 年の Java インターンの就職面接の質問 - HTTP および HTTPS プロトコル

(1) 顧客は https URL を使用して Web サーバーにアクセスし、SSL 接続を確立する必要があります。 Web サーバーを使用します。
(2) クライアントのリクエストを受信した後、Web サーバーは Web サイトの証明書情報 (証明書には公開キーが含まれています) のコピーをクライアントに送信します。
(3) クライアントのブラウザと Web サーバーは、SSL 接続のセキュリティ レベル (情報暗号化のレベル) のネゴシエーションを開始します。
(4) クライアントのブラウザは、双方が合意したセキュリティ レベルに基づいてセッション キーを確立し、Web サイトの公開キーを使用してセッション キーを暗号化し、Web サイトに送信します。
(5) Web サーバーは、独自の秘密キーを使用してセッション キーを復号化します。
(6) Web サーバーはセッション キーを使用してクライアントとの通信を暗号化します。

2023 年の Java インターンの就職面接の質問 - HTTP および HTTPS プロトコル

関連する推奨事項: Java の概要

以上が2023 年の Java インターンの就職面接の質問 - HTTP および HTTPS プロトコルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。