应用示例--FlashCom Develop阅读笔记 (五)

2006-03-09 00:36:01

下面内容主要讲述如果用如何通过客户端连接服务器,怎样访问共享对象,以及调用远程方法等。 当用户使用客户端的swf文件连接服务器时,服务器会加载应用程序,如果没有运行就创建实例。服务器端接受连接之后,产生一个新的客户端对象回应该客户端应用程序,执行指定的服务器端脚本。客户端需要做的是初始化数据流和共享对象等 连接流程 当客户端开始连接服务器后,服务器端会调用onAppStart方法(确保应用程序实例已经处于运行状态) 接下来,服务器端会回调客户端定义的onConnect方法,该方法的逻辑决定了是否接受该连接请求。当客户端断开连接的时候,会调用服务器端的onDisconnect方法;当应用程序结束后,会调用onAppStop方法 远程方法调用 在连接成功之后,客户端可以调用服务器端组件定义的方法,服务器端也可以调用客户端组件中的方法。 每一个连接到服务器端的应用程序都作为一个服务器端的客户对象实例,每一个客户端的实例对象都可以通过NetConnect对象调用远程服务器的方法,然后服务器端可以回应并返回值给客户端。下面的图表示了在客户端调用服务器端方法并获取返回值的方法: 从服务器端回调客户端的方法 从服务器回调客户端的方法比较类似于上面所说的。在客户端,可以给NetConnect对象的实例自定义方法,在服务器端可以利用client.call的方式调用客户端的方法。图示即为从服务器调用客户端并返回值的方法。 共享对象的使用 共享对象简化了在多用户之间共享数据的开发工作,一个Flash 客户端要获取远程共享对象可以通过 SharedObject.getRemote来指定连接, 然后通过SharedObject.connect连接远程共享对象,一旦连接成功,服务器端会发送同步信息给各个连接的客户端,客户端使用SharedObject.onSync来保持同步,下面的图简单描述了其使用过程。