あなたはのETag HTTPプロトコルがそれをやっている知っていますか?

序文

ETag:HTTP1.1仕様で、HTTPヘッダーを追加しました。通常の開発者のために、通常は本当にHTTPヘッダーに接触しないことがあります。通常は以下に接触していない、これはリクエストヘッダは重要ではないことを意味するものではありません。ETagのは、サーバーの帯域幅の圧力を減らすことができ、適切に使用しました。

ETagのは何ですか?

エンティティタグのEtagの略称である「真の値が、変数要求された」として、理解することができる、のEtagは、HTTPレスポンスの最初のクライアントに送信されるサーバーのリソース識別子です。いわゆるサーバ側のリソースはJSON、またはXMLできるようなWebページとすることができます。頭の中で、どのような記号とその意味を決定する責任が別々のサーバーとHTTPに対応してクライアントに送信します。例えば、最初の時間は、ブラウザは、サーバが返さ与えるリソースを要求したETagを返さ:ブラウザへ:「50b1c1d4f775c61 DF3」などの言葉のブラウザは再びこのリソースを要求すると、ブラウザは次の場合になります-noneマッチ:W /「50b1c1d4f775c61:DF3」リソースが変更されていない場合は、304HTTPステータスコードが返されたリソースは、コントラストを変更するかどうかをサーバに送信し、ETAGを取得するために、サーバは、特定のリソースを返しません。

Etagを説明するための実用的な例

私たちは、サーバー上の帯域幅の圧力を低下させる、のEtagによってブラウザのキャッシュを使用することができます。これは、サーバ(データ伝送)のパフォーマンスを向上させることができます。七つの牛は、それがのEtagのプロパティを使用して、ファイルストレージをクラウド。今、私は7頭の牛のクラウド上のリソースを要求します。

そのレスポンスヘッダーで見ることができ、私たちにのEtagフィールドを返されました。ETagの値Fpl1rXE-K20cYsLu89YTzUQ3ydDk。

再びリソースを更新:

このとき、ステータスコードにHTTPステータスコード304、304は、リソースが変更されないことを示しています。次のように、HTTPリクエストヘッダを表示します。
サーバーへのクライアントのリソース要求は、If-None-Matchリクエストによって返されたサーバーの前のEtagヘッダーの値を持ってするときには、それを見ることができます。場合は、サーバーがIf-None-Matchフィールドを運ぶために見つかった二度目は、対応のEtagサーバリソースを再計算要求を受信し、それらが一致する場合、およびリソースに変化が見られないだろう、クライアント304に直接対応しますレッツ最終顧客データキャッシュをお読みください。

概要

この記事のEtagのためであるが、7頭の牛クラウドオブジェクトストレージの組み合わせの概念的な説明と例を作り、のEtagキャッシュプロセスを分析します。たEtagについて、物事の多くは、このようなのEtagなどの詳細に取得していないがありますので、変更された場合は-とのEtagの戦闘、それの詳細な説明を行うためにこれらのフォローアップ/ Last-Modifiedのものを計算する方法です!

ます。https://juejin.im/post/5d07a0fcf265da1ba56b1f15で再現

おすすめ

転載: blog.csdn.net/weixin_33975951/article/details/93183809