- 締切済み
キャッシュを完全に消すHTML入れたのですが、・・
私はフラッシュを作成している者です。 フラッシュをまめに修正してネットにアップしているのですが、なぜか最初にアップしたままという現象が続きました。 いろいろ調べたところキャッシュされていてそれが読み込まれている状態と気づきました。 これを解消すべく、キャッシュを完全に残さずに表示させる勉強を始めました。 下記のようなソースコードを入れることによってキャッシュされにくいという情報を入手したので入れたのですが、反応がありませんでした。 どうかキャッシュを読み込まないようにする方法を教えていただけないでしょうか? お願いします。(土下座) <META http-equiv="Pragma" content="no-cache"> <META http-equiv="Cache-Control" content="no-cache"> <META http-equiv="Expires" content="Thu, 01 Dec 1994 16:00:00 GMT">
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- duckling
- ベストアンサー率47% (88/185)
<script language="JavaScript"><!-- number = Math.floor(Math.random() * 10000); document.write('<embed src="test.swf?'+ number +'">'); </script> 当然ですが、↑これを書くだけではFlashは正常には読み込まれません。 上に書いてあるものは 「こういう風に書いたらいいんですよ~」という、ただのサンプルで、 Flashを読み込むタグの「すべてを」書き込まなければいけないのです。 (<param name=○○~~~~~~> も含めて、すべて) JavaScript の書き方や、Flashタグの書き方、 上の文章の意味を理解していることが条件ですが、 とりあえず解決法は、 「test.swf」 を読み込むのではなく、 「test.swf?ランダムな数字」 を読み込めばいい、ということです。 (ランダムな数字を発生させるために、JavaScriptを使っているだけです。)
- duckling
- ベストアンサー率47% (88/185)
JavaScript を使ってFlashをはめ込むためのタグを書き出す、 という方法があります。 <script language="JavaScript"><!-- number = Math.floor(Math.random() * 10000); document.write('<embed src="test.swf?'+ number +'">'); </script> HTMLを表示させるたびにJavaScriptがランダムな数値を形成するので ブラウザは、毎回表示させるFlashファイルが違うものであると判断します。 キャッシュはされますが、同じキャッシュは読み込みません。 私の場合、ですが、頻繁に更新する可能性のあるFlashページは こうすることで対処しています。
- lmeelm
- ベストアンサー率52% (18/34)
完全なお答えではなく申し訳ないのですが、私も同じ経験があり、 今までにわかっていることを書いていきますと、タグは、それで合っていると思います。 しかし、それはおそらくFlashを貼っているHTMLをキャッシュしないということで、 貼られているFlashファイルはおそらくキャッシュに保存されているのだろうと思います。 Flashを貼っていらっしゃるのでしたら、おそらくページのソースは大変短いですよね? そのページはキャッシュには残していないけれど、貼られているファイルは保存されているので、 そのようになっているのではないかと思います。 私の場合、通常のGIF画像なのですが、CGIをキャッシュに残さないようにし、 CGIから画像を呼び出すようにして、HTMLに画像を表示させるようにしたところ、 画像をキャッシュされないようにすることができました(ちょっと説明わかりにくいですね)。 中途半端なお答えですみません。わかっているのはこんなところまでです。 また何かわかりましたら書いておいてみます。
補足
よいアドバイスを頂き本当にありがとうございます。 CGIから画像を呼び出すというというと具体的にどのような事でしょうか? もし御時間があればソースなどを交えて教えて頂けないでしょうか?お願いします。 贅沢なご質問ですので、厄介だと思われた時点で無視して下さい。
補足
すばらしいアドバイスを頂き本当に感謝しております。 実際に試したのですがうまくいきませんでした。 下記のソースの src="swfファイル名" の個所だけを修正し、フラッシュが表示される部分に埋め込みました。 実際に表示すると画面が真っ白になり何も表示されない状態になります。 ただソースを見てみるとちゃんと書かれているのですが、・・・ どうかアドバイスを頂けないでしょうか? お願いします。 <script language="JavaScript"><!-- number = Math.floor(Math.random() * 10000); document.write('<embed src="test.swf?'+ number +'">'); </script>