Flash Player 6。
LocalConnection 类用于开发 SWF 文件,这些文件无需使用 fscommand() 或 JavaScript 即可相互发送指令。LocalConnection 对象只能在运行于同一台客户机上的 SWF 文件之间通讯,但这些 SWF 文件可以在两个不同的应用程序中运行。例如,一个 SWF 文件在浏览器中运行,而一个 SWF 文件在播放器中运行。您可以使用 LocalConnection 对象在单个 SWF 文件中发送和接收数据,但这不是标准的实现;本节中的所有示例均说明不同 SWF 文件之间的通讯。
用来发送和接收数据的主要方法是 LocalConnection.send()
和
LocalConnection.connect()
。在最基础的层次,您的代码将实现以下命令;请注意 LocalConnection.send()
和LocalConnection.connect()
命令均指定相同的连接名称 lc_name
:
// 接收方影片中的代码 receiving_lc = new LocalConnection(); receiving_lc.methodToExecute = function(param1, param2) { // 要执行的代码 } receiving_lc.connect("lc_name"); // 发送方影片中的代码 sending_lc = new LocalConnection(); sending_lc.send("lc_name", "methodToExecute", dataItem1, dataItem2)
LocalConnection 对象最简单的使用方法是仅允许在位于同一个域中的 LocalConnection 对象之间进行通讯,因为您将不需要处理与安全相关的问题。但是,如果您需要允许域间通讯,则可以通过多种方法来实现安全措施。有关更多信息,请参见 LocalConnection.send()
中对 connectionName
参数的讨论,以及 LocalConnection.allowDomain
和 LocalConnection.domain()
条目。
方法 |
说明 |
---|---|
关闭(断开连接)LocalConnection 对象。 |
|
准备 LocalConnection 对象,以从 |
|
返回一个字符串,表示当前 SWF 文件所在位置的超域。 |
|
对指定的 LocalConnection 对象调用方法。 |
事件处理函数 |
说明 |
---|---|
LocalConnection.allowDomain
|
每当当前(接收方)LocalConnection 对象从发送方 LocalConnection 对象收到调用方法的请求时调用。 |
LocalConnection.allowInsecureDomain
|
每当当前(接收方)LocalConnection 对象(位于使用安全协议 HTTPS 的域承载的 SWF 文件中)从发送方 LocalConnection 对象(位于使用非安全协议的域承载的 SWF 文件中)收到调用方法的请求时调用。 |
LocalConnection.onStatus
|
当发送方 LocalConnection 对象尝试将命令发送到接收方 LocalConnection 对象之后调用。 |
Flash Player 6。
new LocalConnection()
无。
无。
构造函数;创建 LocalConnection 对象。
以下示例显示接收方 SWF 文件和发送方 SWF 文件如何创建 LocalConnnection 对象。请注意,这两个 SWF 文件可以为其各自的 LocalConnection 对象使用相同的名称或不同的名称。在此示例中,它们使用相同的名称 my_lc
。
// 接收方 SWF 中的代码 my_lc = new LocalConnection(); my_lc.someMethod = function() { // 此处是您的语句 } my_lc.connect("connectionName"); // 发送方 SWF 中的代码 my_lc = new LocalConnection(); my_lc.send("connectionName", "someMethod");
LocalConnection.connect()、LocalConnection.send()