HTTP 电影码1XX の詳細な理解 – プログラミング一生 – 博客园
前段時间见《御赤小仵作》には、非常にボリュームのある詳細がたくさんあります。 見る見る見る评论可:最終的に、私は実際に、王府連合上で本物を見ることができました、王府連合上流です。開園すると、西部地域(現在は新しい領土とより西部の地域)のブドウがついに食べられるようになります。
対応する問題について話しましょう。正しいタイトル、http ステータス コード 1XX に戻りましょう。 http ステータス 200、404、500 については、その一部は誰もがよく知っています。 1XX は実際には見たことがないかもしれません。今日は、story洋脱の音声メソッドを使用して、1XX ステータス コードのスレッドのレイヤーを開きます。
意味
HTTP ステータス コード(英語:HTTP Status Code)は、超移動電子ビデオ設計の電子効果を表す 3 ビットビデオの電子効果です。 この文は注意深くお読みください。
ここでは答えません、友達の定義はまた決められません。
ステータス コード 1XX は、サービス プロバイダーがリクエストをすでに受信しているが、さらに処理が必要であることを示します。
白居易一首《问刘十九》:
新酒、泥泥小火炉を経て。
晚来天欲雪,能饮公司無し?
これは 1XX 年のシナリオと似ています。
1xxステータスコードはHTTP/1.1バージョンで新たに定義され、リクエストが正常に受信されたことを示し、その後の処理が行われるために使用されます。
100 継続
ステータス コードは、サーバーがリクエストの最初の部分を受信したことを示します。クライアントはリクエストの最初の部分に送信を続けてください。また、クライアントはリクエストの最初の部分に送信を続けてください。
このステータス コードは、実際には次のシナリオに対する最適化です。クライアントには、アップロードして保存する必要がある大きなファイルがありますが、サーバーがこのファイルを受け入れるかどうかが分からないため、送信のためにネットワーク リソースを消費する前にサーバーに受け入れを求める必要があります。
Expect: 100-continue
このとき、サーバーが受け入れる意思がある場合は、100 Continue ステータス コードを返し、反逆の場合は 417 Waiting failed ステータス コードを返します。クライアントの場合、クライアントが実際のリクエスト プランを送信しなかった場合は、レポート メッセージを期待しないでください。これにより、サーバーがクライアントがリクエストを送信したと誤解してしまうためです。誰もが100の理解に基づいてなれる 再回想一个《问刘十九》
名前全名名过、すべての HTTP アプリケーションが 100 でサポートされているわけではありません。このステータス コード (例: HTTP/1.0 およびサーバーの以前のバージョン) を続行すると、クライアントがサーバーの応答に応答しなくなり、一定時間が経過すると、クライアントはプランを直接送信する必要があります。
而名電影的说,了体是把100 厳格な判定方法を継続する。サーバーは、応答を送信する前にクライアントのメイン メッセージを受信している可能性があります。このとき、サーバーは 100 を送信する必要はありません。応答として続行します。ただし、受信完了後に適切なステータス コードを返す必要があります。理論的には、リクエストを待ち続ける場合、応答する必要があります。ただし、サーバーは 100 Continue を送信することはなく、クライアントが 100 Continue ステータス コードを応答として送信するのを待ちます。応答は次のとおりです。サーバーがクライアントのメイン メッセージを受信するつもりがない場合は、単に接続を閉じるのではなく、適切に応答する必要があります (417 Expecting Failed など)。そのため、ネットワーク レベルでクライアントに影響を与えます。
プロキシ サーバーが 100 Continue Wait リクエストを受信した場合は、追加の判断が必要です。プロキシ サーバーが HTTP 1/HTTP の判定を知らない場合、またはプロキシ サーバーがリクエストのバージョンを知らない場合は、100 Continue Wait リクエストを渡す必要があります。 417 応答としての期待外れ。しかし、これが唯一の解決方法ではなく、別の実行可能な方法が唯一の方法です。
さらに、プロキシ サーバーが HTTP/1.0 と以前のバージョンのサービスを決定した場合、以前のバージョンのサービスを受信したときに、「100 Continue response to the message」というメッセージをクライアントに転送すべきではありません。これは、クライアントがメッセージの処理方法を知らない可能性があるためです。
101 プロトコルの切り替え
HTTP スイッチング プロトコル 101
このメカニズムは常にクライアントによって開始され、サーバーは新しいプロトコルへの切り替えを受け入れるか拒否することができます。
実際の例を見てみましょう。
WebSocket 通信を実現するには、クライアントはまず単純な HTTP リクエストを開始する必要があります。つまり、WebSocket の確立は HTTP に依存します。
HTTP 天生天天アップグレード: websocket と接続: アップグレードは非常に重要です。サーバー通信プロトコルを変更するように指示し、WebSocket プロトコルに変換します。
このうち、Sec-WebSocket-Accept フィールドは、サーバーが前のクライアントに送信した Sec-WebSocket-Key を検証および暗号化した結果であり、1 回の検証に相当し、相手が実際に使用可能な WebSocket サーバーであることをクライアントが確認できるようにします。
検証に合格すると、この握所応答によって WebSocket 接続が確立され、サーバー側がホストになり、サーバー側が WebSocket 側に接続できるようになります。
WebSocket接続が確立されると、それ以降の通信はHTTPを使用せず、独自のWebSocket使用に切り替わります。
102 処理
102 WebDAV (RFC 2518) ステートコードにより処理が拡張され、代表的な処理が継続して実行されます。
Web サーバーは複雑なリクエストを処理するのに時間がかかる場合があります。クライアントのブラウザが、複雑な要件を含む複数のサブリクエストを含む WebDAV リクエストを送信すると、サーバーはこのコード「102 – 処理中」を処理して送信するのに時間がかかります。
まとめ
HTTP ステータス コードの設計ルールは次のとおりです。最初のルールは分類です。 2XX は、サービスがリクエストを受信し、分析が完了したことを示します。 3XX は、サービスがリクエストを受信したが、他のサービスで処理する必要があることを示します。 4XX は、サービスがリクエストを受信したが理解できないことを示し、クライアントが間違ったリクエストをリクエストしたことを示します。 5XX は、サービスがリクエストを受信したが、その原因はサービス プロバイダー自身の問題であることを示します。
このコーディング方法は多くの場所で使用されています。
例文帳に追加
前1、2位電影电影の名前:图内省(直辷市、自画区)のコード;第3、4位電影礜:字表礜:级市(自宇场) )のコード;第5、6位電影電影:海台区(直辷市、自宇区)の北北县字可以第7—14位存合:誕生年、月、日;第15、16位合名:失われた地の派出所の派出所商;第17位名合電影:奇数名合堂昀民数名合堣昀数
コードなど
決済システムは、参加者の各クラスに 3 桁の識別番号を割り当てます。最初の桁は銀行の種類、残りの 2 桁は識別番号です。
支払いシステムの参加者のルールは、各ゲストが特別なコードを持っていることを除いて、支払いシステムのルールと似ています。
往期関連の読み物
https 电影基城问题-COE&ケーススタディ
白话TCP/IPの原則
一つのhttpリクエスト进来都可了亀何(2021版)
一部の友人は、私の興味が非常に広範囲にわたる研究であることを知っています。私の興味が非常に幅広いことを知っている友人もいますが、研究…実際、私は「周易」を研究することも好きです。
形式
男:XX 女:XX