# LocalConnection.domain()

#### Availability

Flash Player 6.

#### Usage

    my_lc.domain()

#### Parameters

None.

#### Returns

A string representing the subdomain of the location of the current movie.

#### Description

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.

#### Example

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:

- The receiving movie prepares to receive commands on a connection named `"sum"` (line 11). The Flash Player resolves the name of this connection to `"mydomain.com:sum"` (see LocalConnection.connect()).
- The sending movie prepares to receive a reply on the LocalConnection object named `"result"` (line 58). It also specifies that it will accept commands only from movies at mydomain.com (lines 51 to 53).
- The sending movie invokes the `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).
- The `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));

- The `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);

#### See also

LocalConnection.allowDomain