問題タブ [if-modified-since]
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.
wcf - WCF で動作するように if-modified-since ヘッダーを取得する
「if-modified-since」ヘッダーを WCF Web サービスで動作させようとしています。
ユーザーが私のサービスにリクエストを送信すると、次のように、リクエストのタイムスタンプを含む送信応答に ETag を追加します。
これにより、次の ETag ヘッダーが生成されます。
次に、この値を取得し、次のような後続のリクエストの if-modified-since ヘッダーとしてエコー バックします。
WebOperationContext.Current.Headers.IfModifiedSince を調べると、提供された値が得られません。値は「12/31/1969 7:00:00 PM」固定です。
私は何を間違っていますか?
アップデート
Fiddler を使用すると、If-Modified-Since ヘッダーに任意の値を設定しても、コードで同じ 1969 値を取得できることを付け加えておきます。
caching - $_SERVER['IF_MODIFIED_SINCE'] も、Safari から実際に送り返されるものもありません
safari はリクエスト ヘッダーを返信していません。私はそれを実現するのにずっと時間がかかったのを恥じています(しばらくしてから304を送り返しましたが、今までそのサファリの問題に気づいていませんでした)
Firefox が話し、Chrome が話し、Explorer が話す。
サファリはだめです。
このhttp://use.perl.org/~bart/journal/36598を読むと、最後に変更されたヘッダーで Safari に送信された日付の形式に問題があることがわかります。そうである場合、上記で使用されている形式の何が問題になっていますか?
テストと役に立たない検索に 3 時間を費やしました。サファリのキャッシュサポートの提供をあきらめる前に、developper.apple Webサイトを閲覧しています...おそらく内部設定、http形式の日付のコピーペーストの間違い、ヘッダーの欠落...
ご協力いただきありがとうございます
編集: 上記のテスト スクリプトを更新するときにサファリによって送信される http ヘッダーであり、サファリの開発者ツール (リソース) からコピーされます。
batch-file - DOS dir /tw スイッチが機能しない
を使用して、変更されたタイムスタンプでファイルのリストを制御ファイルと比較しようとしています
controlfile
の更新日olderfile
が より前であるため、これは を返しcontrolfile
ます。olderfile
ただし、作成日 (の作成日は の後)で比較しているように見えるcontrolfile
ため、常に が返されolderfile
ます。/tw
スイッチはdir
最後に書かれた日付 (から) を使用するように指示する必要があるため、dir /?
/tw をドキュメントどおりに動作させたい場合、何が間違っているのかわかりません。
:アップデート:
今までolderfile
はcontrolfile
. olderfile
同じディレクトリにコピーするとcontrolfile
、比較は期待どおりに機能しました。つまり、上記のコマンドが返されcontrolfile
ました。そのため、サブフォルダーにいると、明らかに比較が壊れます (サブフォルダーの更新日が の更新日olderfile
よりも前の の更新日である場合でもcontrolfile
)。
だから私の質問は、ディレクトリ構造が必要な場合、これをどのように回避するのですか?
wordpress - Google Chrome が If-Modified-Since ヘッダーを不適切に送信する
実行中の Chrome v 17.0.963.83
Chrome でのみ発生する Wordpress サイトからのログアウトに問題があり、HTTP ヘッダーまで追跡したと思います。
ワークフロー: ログインしています。ホームページ (別名サイト ルート、別名 /) にアクセスします。このページにはログアウト リンクがあり、redirect_to でルートに戻ります。応答が HTTP 200 メッセージであり、(特に) 次の応答があることがわかります。
次に、ページのリンクでログアウトします。ログアウト スクリプト 302 は、正しくホームページにリダイレクトします。今回は、リクエストに If-Modified-Since ヘッダーが含まれています。
今回は、ログアウトしているため、キャッシュ ファイルの Last-Modified 日付は、以前に送信された動的ページよりもかなり前になっているため、サーバーは 304 Not Modified を通知します。問題は、そのアドレスに対する以前の応答が
この動作を回避する方法を知っている人はいますか? それともChromiumのバグですか?
http - Chromeは「If-Modified-Since」を送信しません
不要なトラフィックを回避するために、ブラウザに常に「If-Modified-Since」リクエストヘッダーを追加してもらいたい(初回を除く)。
応答ヘッダーは次のとおりです。
FF11とIE9はどちらも「If-Modified-Since」を送信し、応答として304を取得しますが、Chrome18は送信せず200を取得します。
なんで?Chromeに「If-Modified-Since」ヘッダーを送信させるにはどうすればよいですか?それが重要かどうかはわかりませんが、すべてのリクエストはHTTPSを経由します。
php - PHP スクリプトでの If-modified-since ヘッダーの処理
?img=パラメータで呼び出される PHP スクリプトがあります。
そのパラメーターの値は、画像の (urlencoded) URL です。
私のスクリプトは、その画像がサーバーに既に保存されているかどうかを確認します。
そうでない場合は、ダウンロードします。その後、必要に応じて画像のサイズを変更し、STDOUT に送信します。つまり、リクエストしているブラウザーに送り返し、Content-TypeヘッダーとLast-modifiedヘッダーを先頭に追加します。
これは、いくつかのクロスドメインの問題を回避するために必要であり、1 年以上にわたってうまく機能しています。
ただし、着信するIf-Modified-sinceヘッダーを処理する機能を追加したいと思います。つまり、 Not Modified 304応答を送信します。
私の質問は次のとおりです。
1)Apacheで実行すると、PHPでも可能ですか?
2) ここで PHP で最適な日付を処理 (つまり、解析して生成) する方法は?
おまけの質問)サイズ変更された画像にContent-Lengthヘッダーを追加するにはどうすればよいですか?
私のコードは以下のとおりです (CURL のダウンロード部分は省略しています)。
ruby-on-rails - Rails 3 HTTP-header If-Modified-Since using curl
すぐに使用できる簡単な Rails サーバーを実行しており、If-Modified-Since ヘッダーで動作させる方法を見つけようとしています。次のcurlリクエストを使用しています。
curl -I localhost:3000/shows/1 --header 'If-Modified-Since: Thu, 21 Jun 2012 19:16:20 GMT'
私は常に 200 OK を取得しますが、304 Not Modified が必要です。
ブラウザでこれを行うと、304 Not Modified が表示されますが、curl では表示されません。
私はそれを間違っていますか?
アップデート
私が走れば
curl -v -I localhost:3000/shows/1 --header 'If-Modified-Since: Thu, 21 Jun 2012 19:16:20 GMT'
私は得る:
Set-Cookie: _spacebarfm-rails_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJWY0NzNjYmFlYzJhNzgzZWRjMjc2MmU4YWFkZDc1OTIwBjsAVEkiEF9jc3JmX3Rva2VuBjsARkkiMWhjU3NvQ2VuRkR1NmJRREV1SmxOMUlaK3VhQU0ycjY2am94cFFmOTVnTTg9BjsARg%3D%3D--f9c756d08065c423cdecba2d710b1b74bf798c12; パス=/; HttpOnly
コントローラーの Rails コードは次のとおりです。
Chrome の出力は次のとおりです。
java - Android JavaでWebページの最終更新日時を知る方法
Android Java を使用して Web ページが最後に変更された日付を知るにはどうすればよいですか? またはどのようにリクエストできますか
If-Modified-Since: コンテンツが変更されていない場合、304 Not Modified を返すことができます
httpヘッダーを使用していますか?
asp.net-mvc-3 - If-modified-フィルターとMVC3を含むヘッダー以降
if-modified-sinceヘッダーの実装に関する例を見たばかりです。私はそれがどのようにうまく機能するのか本当に理解していません。この例を見たことがありますが、ヘッダー「Last-Modified」に日付値を設定すると、後で確認するとヘッダー「If-Modified-Since」の値が取得されるようですが、正しいですか?
また、彼がヘルパーを提供しているにもかかわらず、私はすべてのアクションでそれを使用する必要があるようです?
私もこの投稿を調べました。彼は、「If-Modified-Since」ヘッダーを処理するためのフィルターを作成しました。ただし、彼がそこで何をしようとしているのかはよくわかりませんが、ご覧のとおり、「Last-Modified」ヘッダーと「If-Modified-Since」ヘッダーがnullの場合、dateModified=trueとして読み取られます。その後、フィルター内では何も実行されません。したがって、すべてのアクションでこれらのヘッダー値を設定することに依存すると思いますか?
最後に、どのように使用すればよいかわかりません。ビューを更新するたびに、新しい「最終変更日」の日付値を送信する必要があると思います。これは正しいアプローチですか?
php - ブラウザは、.phpファイルに変更されたHTTPリクエストヘッダーフィールドを使用しません
すべてのcssファイルを.phpファイルに結合して、Webページへのアクセスごとのリクエスト数を減らしました。
.phpファイルでリクエストの1日後に有効期限ヘッダーを設定しました
。問題は、ブラウザーが.phpファイルにキャッシュを使用しないことです。つまり、リクエスト時にIF-MODIFIEDヘッダーフィールドを送信しないため、後続のすべてのリクエストは(304ではなく)HTTPレスポンスコード200で応答されます。