質問: ### 前提・実現したいこと お世話になります。 webサーバでアプリケーションを稼働させていますが、時々キャッシュが発生し通信エラーのような状態になってしまうことがあります。 Chrome の DevToolsでリクエストヘッダを確認すると、「Provisional headers are shown」という、キャッシュされたデータを参照したため通信しませんでした、というメッセージが表示されます。 これを回避(発生自体を防ぐか、発生しても通信エラーのようにさせない)したいので、ご助力いただけませんでしょうか。 ### 発生している問題・エラーメッセージ 画像のような状態がちょくちょく発生します。(発生しないこともあります) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/c4483b5c770ad4aac2d909e7e86ac262.jpeg) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/6a1911780d90182cbcef3382746ed878.jpeg) ### 試したこと ・jQueryのajaxのオプションに「cache: false」を設定 ・metaタグに「」を設定 ・クエリパラメータにタイムスタンプを設定 など試しましたが、これでも発生しています。画像2枚目のものはタイムスタンプを付与していますが発生しています...。 ### 補足情報(FW/ツールのバージョンなど) ・Struts 2 ・jQuery 3.3.1 ・Apache 2.2.15 他に必要な情報などありましたらご指摘いただければと思います。 よろしくお願い致します。
回答: > > jQueryのajaxのオプションに「cache: false」を設定 > > > でキャッシュが利用されているならサーバー側の問題なので クライアントが何をやっても効果は薄いと思います ようは ``` fetch('api?cache='+new Date().getTime()).then(x=>x.text()).then(console.log); ``` のようにユニークなパラメータを投げているので、 それをどうサーバーが解釈するか次第でしょう