フリップ、フロップ、境界線の追加などの操作を実行するために、単純な画像エディターを作成する必要があります。jsp サーブレットを使用しています。操作が実行されるたびに、POST ajax リクエストがデータ (画像サーバーの相対パスと操作の名前) と共にサーバーに送信されます。ImageMagick を使用して操作を実行しています - 品質の問題のために。変更が完了すると (それまでは ajaxloader を使用)、応答がビューに返されます。1 つの操作が完了するとすぐにユーザーが操作をクリックするまで、すべてが正常に機能します。古い画像 - 以前の画像編集操作で再度表示され、しばらくすると変更が反映されます。グーグルで調べたところ、キャッシュが原因であるという結論に達しました。私はすべての可能なことを試しました -
タイムスタンプ付きの画像のサーバー相対パスのパスを追加
http://172.16.3.72:8080/~user/dataDir/workspace/2/tempData/ResizeImage.jpeg?random=1381852940376
ajaxのURLにタイムスタンプを追加
http://172.16.3.72:8080/cdl/captureImage.htm?pageNumber=2&isbn=AndItWorksFinally2?random=.332223223
使用されたキャッシュ: jquery で false
ヘッダーを使用してキャッシュを無効にしました
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); response.setHeader("プラグマ", "キャッシュなし"); response.setDateHeader("有効期限", -1);
しかし、これらすべてが役に立ちませんでした。キャッシュの問題ではなく、他に何かありますか? 写真を表示しているときに次のボタンをクリックすると、Facebookがサーバーから画像を非常に高速にロードする方法(重複なし)が不思議でした。