With web technologies generally, and flash specifically, managing cached assets can sometimes feel like walking a tightrope. If you’ve got a simple slideshow and have occasional updates to the image you want immediately reflected to the client, you’ll often see traditional “cache-busting” methods like appending a random number of the current UTC time to the end of an image.

This has always felt a little heavy-handed to me (imagine a slideshow with 25 images, with a couple hundred page views per day – that’s a lot of downloads and a lot of files cached unnecessarily on the client).

A little trick I use to “nudge” caching is to add the UTC time to the swf’s FlashVars (or preferably, just as a query string variable to the swiff’s path) at the time of any update:

<object type="application/x-shockwave-flash" data="path/to/your.swf?updated=1325539300"> 
	<param name="movie" value="path/to/your.swf?updated=1325539300" /> ...

Then when loading assets with ActionScript, append that value to the image filename…

var url:String = "path/to/your/image.jpg?" + root.loaderInfo.parameters.updated;

This way, whenever an update is made, we guarantee a fresh copy, but those files will still cache normally between updates.