15.2. Loading an External SWF from a Trusting Domain
Problem
You want to load an external .swf file into your Flash movie, but the .swf file resides within a different domain.
Solution
Use the allowDomain( )
method from within the
.swf file you want to load to create a trusting
relationship between the domains.
Discussion
The System.security.allowDomain( )
method
allows you to create trusting relationships
between .swf files in different domains. The
allowDomain( )
method must be called from within
the .swf file you wish to load. Therefore, this
technique is applicable only if you want to load
.swf
files to which you can
add the allowDomain( )
method call. Otherwise,
see Recipe 15.6 to load content by a
proxy script.
Here is a scenario in which you can use allowDomain(
)
to create a trusting relationship: you have two
.swf files, my.swf and
your.swf. The my.swf movie
is on www.mydomain.com, and
your.swf is on
www.yourdomain.com. If you want
my.swf to be able to load
your.swf, add the following line to
your.swf:
System.security.allowDomain("mydomain.com");
This line of code tells your.swf to allow itself
to be loaded by any movies in the mydomain.com
domain. The my.swf movie can then load
your.swf using a standard loadMovie(
)
method call:
// CreatemyMovieClip
usingcreateEmptyMovieClip( )
. _root.createEmptyMovieClip("myMovieClip", 1); // Load the trusting.swf
file intomyMovieClip
. myMovieClip.loadMovie("http://www.yourdomain.com/your.swf");
If you want to allow your.swf to be loaded ...
Get Actionscript Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.