この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
サイトを作っていると、画像を変更したのに変更が反映されない!という事態に遭遇したことがある人も多いはず…。
その場合あわてずに更新ボタンを押せば大抵が解決したかと思います。
しかしFlashの場合は更新ボタンでは解決しないこともあるのです。
ネットワークの環境によってすぐに変更が反映される場合もあれば、されない場合もあります。
弊社からはすぐに確認が出来てしまうため、クライアント様から「変更が反映されていない」と連絡があって初めて気が付くということも…。
まずはキャッシュをクリアすれば解決します。
開発中などはそれでも問題はありませんが(少々手間ですが)本番運用に入るとそういうわけにもいきません。
(エンドユーザー様に「サイトの閲覧の際にはキャッシュをクリアしてください」なんてサイトはありませんよね…)
ファイル名を変更するという解決方法もありますが、 しかし運用上ファイル名を変更したくない場合もあるかと思います。
その場合便利なのがパラメーターです。
Flashファイル名の後に「?」とお好きな数値を付ければ、キャッシュを使用しないでフラッシュを読み込んでくれます。
そのフラッシュの利用箇所が一ヶ所なら、「hoge.swf?0123」といった感じ呼び出せばOK。
フラッシュを変更したら呼び出し元のタグを「hoge.swf?3210」のように変更してください。
もし呼び出し箇所が複数個なら、数時の部分をjavascriptなどでランダム(またはアクセス日付)を付けるように指定しておけば意識することなくフラッシュの変更が出来ます。…