Flash Player 6.
my_lc
.domain()
None.
A string representing the subdomain of the location of the current movie.
Method; returns a string representing the subdomain of the location of the current movie. For example, if the current movie is located at www.macromedia.com, this command returns "macromedia.com"
. If the current movie is a local file residing on the client machine, this command returns "localhost"
.
The most common way to use this command is to include the domain name of the sending LocalConnection object as a parameter to the method you plan to invoke in the receiving LocalConnection object, or in conjunction with LocalConnection.allowDomain to accept commands from a specified domain. If you are enabling communication only between LocalConnection objects that are located in the same domain, you probably don't need to use this command.
In the following example, a receiving movie accepts commands only from movies located in the same domain or at macromedia.com.
my_lc = new LocalConnection(); my_lc.allowDomain = function(sendingDomain) { return (sendingDomain==this.domain() || sendingDomain=="macromedia.com"); }
In the following example, a sending movie located at yourdomain.com invokes a method in a receiving movie located at mydomain.com. The sending movie includes its domain name as a parameter to the method it invokes, so the receiving movie can return a reply value to a LocalConnection object in the correct domain. The sending movie also specifies that it will accept commands only from movies at mydomain.com.
Line numbers are included for reference purposes. The sequence of events is as follows:
"sum"
(line 11). The Flash Player resolves the name of this connection to "mydomain.com:sum"
(see LocalConnection.connect())."result"
(line 58). It also specifies that it will accept commands only from movies at mydomain.com (lines 51 to 53). aSum
method of a connection named "mydomain.com:sum"
(line 59), and passes the following parameters: its domain (lc.domain()
), the name of the connection to receive the reply ("result"
), and the values to be used by aSum
(123 and 456).aSum
method (line 6) is invoked with the following values: sender = "mydomain.com:result"
, replyMethod
= "aResult"
, n1
= 123, and n2
= 456. It therefore executes the following line of code:this.send("mydomain.com:result", "aResult", (123 + 456));
aResult
method (line 54) displays the value returned by aSum
(579). // The receiving movie at http://www.mydomain.com/folder/movie.swf // contains the following code 1 var aLocalConnection = new LocalConnection(); 2 aLocalConnection.allowDomain = function() 3 { // Allow connections from any domain 4 return true; 5 } 6 aLocalConnection.aSum = function(sender, replyMethod, n1, n2) 7 { 8 this.send(sender, replyMethod, (n1 + n2)); 9 } 10 11 aLocalConnection.connect("sum"); // The sending movie at http://www.yourdomain.com/folder/movie.swf // contains the following code 50 var lc = new LocalConnection(); 51 lc.allowDomain = function(aDomain) { // Allow connections only from mydomain.com 52 return (aDomain == "mydomain.com"); 53 } 54 lc.aResult = function(aParam) { 55 trace("The sum is " + aParam); 56 } 57 58 lc.connect("result"); 59 lc.send("mydomain.com:sum", "aSum", lc.domain() + ':' + "result", "aResult", 123, 456);