0

我在 localhost 上使用“Adobe Media Server Starter 5”创建了一个媒体服务器,并且能够通过 AS3 AIR 应用程序连接到它。我可以在“Adobe Media Server 管理控制台”中看到来自名为“SimpleServer”的应用程序的连接,并且我收到了有关该连接的正面反馈:

接受来自 IP:127.0.0.1 的连接,引用者:app:/SimpleServer.swf,pageurl:

在尝试创建新的 SharedObject 时,我既没有收到编译时间错误,也没有收到运行时错误,我根本没有收到任何反馈。我正在使用以下代码:

    var shared:SharedObject = SharedObject.getRemote("HelloWorld", "rtmp://localhost/SimpleServer");
    shared.addEventListener(SyncEvent.SYNC, syncEventHandler);
    shared.connect(nc);

NetConnection 创建如下:

    nc = new NetConnection();
    nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    nc.connect("rtmp://localhost/SimpleServer");
    nc.client = this;

我在“查看应用程序”->“共享对象”中看不到 SharedObject,并且没有收到有关创建的反馈。就像从未创建过对象一样。我还尝试在 SharedObject 上设置属性,但没有效果:

shared.setProperty("test", false);

这个问题有一个简单的解决方案还是我必须配置高级服务器的东西?先感谢您!

4

1 回答 1

0

正如 Sunil 在评论中所问的那样,syncEventHandler在您运行代码时是否曾调用过?

部分回答您的问题:不,您不需要任何特定的服务器端配置即可在客户端检索 SharedObject 。在尝试获取/连接到远程共享对象之前,只需确保您已连接到服务器。

有关更多信息,请参阅此答案

此外,在尝试获取远程共享对象时,一个很好的做法是使用实NetConnection​​例中的 uri:

var shared:SharedObject = SharedObject.getRemote("HelloWorld", nc.uri);
于 2013-05-27T03:20:20.093 回答