問題タブ [etag]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java 用のディスク キャッシング http ライブラリ: 存在しますか?
私の知る限り、Apache HttpClient にはキャッシュがありません。私の質問は、ディスクにキャッシュできる HTTP ライブラリについて知っていますか? 自分で実装するのは楽しいですが、実装する前に、既に存在するかどうかを確認することをお勧めします:-)
要件: HTTP 1.1 のサポート ディスク (フォルダーなど) にキャッシュ可能 ディスク上の最大キャッシュ サイズのサポート eTag のサポート
html - HTTP 304 Not Modified-responsesにcache-controlヘッダーを含める必要がありますか?
私はこれを理解しようとし、SOで同様の質問を検索しましたが、これがどのように機能するかについてはまだ100%理解していません。
画像リソースのリクエストで次の応答があります。
望ましい動作は、クライアントがこれを120秒間キャッシュしてから、サーバーに再度要求することです。120秒以内に、サーバーに要求は送信されません。
次に、120秒後、要求が送信され、304応答が受信されます。
これまでのところ、すべて順調です。しかし、次のリクエスト(120秒以内)で、リソースを新しい120秒間キャッシュする必要があると思いました。一方、ブラウザ(Firefox)に表示されるのは、この時点から常にリソースを要求し、304応答を受信することです。
304応答でcache-controlヘッダーを添付することになっていますか?仕様で読み取れることから、キャッシュ制御設定を省略し、キャッシュが自動的に120秒間キャッシュする必要があるようです。
http - HTTP: etag の最大長
HTTP プロトコルは ETag の最大長を指定していますか?
ruby - ruby の fresh_when が xml レンダリングで機能しない
残りのシステムで条件付き GETting のサポートを実装しようとしているときに、 fresh_when と stale? に遭遇しました。メソッド。
次のコードは 304 で正常に動作し、それ以上のレンダリングは行いません: format.html # show.html.erb } end end
ただし、1.xml にアクセスすると、リソースを 2 回レンダリングしようとします。
エラーメッセージ:
ActionController::OrdersController#show の DoubleRenderError
アクションごとに 1 回だけレンダリングまたはリダイレクトできます
RAILS_ROOT: /Users/guilherme/Documents/ruby/restfulie-test アプリケーション トレース | フレームワーク トレース | 完全なトレース
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/base.rb:900:in render_without_benchmark'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/benchmarking.rb:51:in
render' /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/active_support /core_ext/benchmark.rb:17:in ms'
/Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/active_support/core_ext/benchmark.rb:10:in
realtime' /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/active_support/core_ext/benchmark.rb:17:in ms'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/benchmarking.rb:51:in
render' /Library/Ruby/Gems /1.8/gems/actionpack-2.3.4/lib/action_controller/base.rb:1331:in send'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/base.rb:1331:in
perform_action_without_filters' /Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/filters.rb:617 :in call_filters'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/filters.rb:610:in
perform_action_without_benchmark' /Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/benchmarking.rb:68:in perform_action_without_rescue'
/Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/active_support/core_ext/benchmark.rb:17:in
ms' /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4 /lib/active_support/core_ext/benchmark.rb:10:inrealtime'
/Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/active_support/core_ext/benchmark.rb:17:in
ms' /Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/benchmarking.rb:68:in perform_action_without_rescue'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/rescue.rb:160:in
perform_action_without_flash' /Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib /action_controller/flash.rb:146:perform_action'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/base.rb:532:in
送信中' /Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/base.rb:532:process_without_filters'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/filters.rb:606:in
処理中' /Library/Ruby/Gems/1.8 /gems/actionpack-2.3.4/lib/action_controller/base.rb:391:process'
/Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/base.rb:386:in
呼び出し中' /Library/Ruby/Gems/1.8/gems/actionpack-2.3.4/lib/action_controller/routing/route_set.rb:437 :in `call'
助言がありますか?
よろしく
case-sensitive - HTTP ETag は大文字と小文字を区別する必要がありますか?
Web サーバーで HTTP 経由のクライアント キャッシュを処理するためのライブラリを作成しています (つまり、If-Match、If-Modified-Since、If-None-Match、および If-Unmodified-Since HTTP ヘッダーの処理)。 m は現在、ETag (エンティティ タグ) に取り組んでいます。私の質問は、ETag は大文字と小文字を区別するべきですか、それとも大文字と小文字を区別しないべきですか? RFC 2616 ( http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html )を見てきましたが、指定されていません。
これは、大文字と小文字を区別する必要があることを意味しているとしか思えませんが、標準に従っていることを確認したいと思います。
asp.net - ETag、IIS7、カーネル キャッシュ ポリシー (enableKernelCache)
2 つの部分からなる質問 (部分は密接に関連しています): IIS7 が採用している既定の OOTB ETag ポリシーでは、ページを移動するときに If-None-Match/304 インタラクションが表示されないのはなぜですか?
たとえば、空のキャッシュ要求に対して返されるヘッダーは次のとおりです。
...そして、ページへのその後のアクセスは、画像の 304 ラウンドトリップを生成しませんか?
また、IIS7 のデフォルトのapplicationHostファイルには、次の (1) があります。
enableKernelCache ='true'はすべての静的ファイルに拡張され、カーネル ポリシーとしてCacheUntilChangeを付与するために拡張機能を明示的に登録する必要がなくなりますか(2):
(1) %systemroot%\System32\inetsrv\config\applicationHost.config
(2) http://labs.episerver.com/en/Blogs/Per/Archive/2009/3/Configuring-cache-expiration-on-IIS-7/
emacs - 開始バッファー/位置に戻る Emacs Etags
私はバッファ A にいて、M- を使用しています。バッファ B にジャンプする関数名について。その関数から、M- を使用します。もう一度バッファ C にジャンプします。これで、必要なものがわかり、バッファ A に戻りたいと思いました。バッファリストを開いて、自分がいたバッファを見つけたり、バッファを覚えたりせずにこれを行うコマンドを知りません。バッファの名前を入力して入力します。これを解決するにはどうしますか?
c - `ctags -e` ファイル形式の理解 (emacs の ctags)
「ctags -e」としても知られる「ExuberantCtags」を使用しています。単に「etags」としても知られています。
etags コマンドによって生成される TAGS ファイル形式を理解しようとしています。特に、TAGS ファイルの 2 行目を理解したいと考えています。
ウィキペディアによると、2行目は次のように記述されています。
実際には、「foo.c」の TAGS ファイル line:2 は次のようになります。
私の困惑は、この番号を正確に見つける方法です:1683
「tag_definition」のサイズだとわかっているので、知りたいのは「tag_definition」とは何ですか?
私はctags のソース コードを調べてみましたが、おそらく私よりも C が得意な人がこれを理解することに成功するでしょう。
ありがとう!
編集#2:
わかりました。私の理解が正しければ、「79」は TAGS ファイル内の 79 以降から「91^J」までのバイト数を指します。
完全に理にかなっています。
このウィキペディアの例の数字 20、59、91 は、{byte_offset} を参照していると言っています。
{byte_offset} のオフセットは何ですか?
ケンを助けてくれてありがとう!
ruby-on-rails - テストおよび実稼働環境での不適切な ETag 値
ここで説明されているように、Rails の新しいキャッシュ ソリューションを使用しています。
開発環境は正常に動作しますが、テストと本番では無効なETag
ヘッダーが送信され、stale?
関数のパラメーターが無視されます。
これが私のコントローラーの1つの対応する部分です:
のstale?
メソッドは、次のコードを持つオブジェクトのを設定するメソッドをActionController::Base
呼び出します。fresh_when
etag
Response
すべての環境で取得した場合、Category
モデルは正しいものを送信します。cache_key
開発環境でURLを選択すると、保存するたびに変更されますが、テストまたは本番環境では変更されないため、何が起こってhttp://localhost:3000/admin/categories/
いるのかわかりません。ETag
Category
webrickとthinでテストしました