Flashサイトを制作する上で欠かせないのがXMLやCSSなどの外部ファイル。ところがFlashにはこのXMLをブラウザがキャッシュから読み込んでしまい、作業した部分やPHPなどで書き換えた部分が再度読み込んだ際に反映されないという問題があります。


このキャッシュから読み込んでしまう問題により作業に支障がある場合もありますし、例えばFlashで掲示板などを作る場合に、書き込みが反映されずに何度も書き込んでしまうという事態もあります。この問題はタイムスタンプ(またはランダムな値)をXMLをロードするリクエストに追加することで解決できます。それの関数をUtilitiesクラスに追加しました。

function noCache():String
{
	if(new LocalConnection().domain() != "localhost")
	{
		var noCache:Number = new Date().getTime();
		return "?noCache="+noCache.toString();
	}
	else
	{
		return "";
	}
}

以下、実行コード

var UTL:Utilities = new Utilities();
〜中略
var xml:XML = new XML();
xml.onLoad=function()
{
	 trace("XML Load Success.");
}
xml.Load("myData.xml"+UTL.noCache());

このファンクションは僕の「しりとり」にて使用しています。ま、けっこう有名なTipsですが。。
Utilities_070127.zip (14KB)