Actionscript 3 nc.call()关闭网络连接
我在flash Builder 4.6上制作了一个flash聊天应用程序,该应用程序连接到centos5 32位服务器上的flash Media(Development)服务器,问题是当我在浏览器中将其打开约2分钟空闲时,然后尝试调用netconnection以获取聊天历史记录或发送公共消息,或使用nc.call()方法调用服务器端的函数,它突然显示netconnection.connect.closed。。除非我打电话,否则它不会给我联系的 当这种情况发生时,我正在查看fms管理控制台中的活动用户,但客户端没有断开,似乎仍连接到服务器。即使我关闭浏览器,客户端仍在fms控制台中。。(通常,当我关闭浏览器或使用nc.close()时,客户端断开连接,我在fms管理控制台中看到快速更改。) 然后仍在观察fms管理控制台,大约10分钟后,客户机掉线..(我认为这是正常的) 我在连接到localhost时尝试了同一个应用程序,效果非常好,我让该应用程序打开了很长一段时间,然后尝试了nc.call()它工作得很好。但是当我在我的服务器上尝试应用程序时,我遇到了问题。我在我的服务器上尝试了fms 3.5和4.0.3,但我也遇到了问题。但是在本地主机上它工作得很好,所以我认为问题不在于版本,而在于与服务器的连接不同 此外,pepper flash player已禁用..问题不在于server.xml、application.xml vhost.xml配置文件中的autocloseidleclients属性。问题在于连接可能与防火墙、tcp、路由器等有关。我不知道,但我确实需要帮助Actionscript 3 nc.call()关闭网络连接,actionscript-3,flash,connection,flash-builder,flash-media-server,Actionscript 3,Flash,Connection,Flash Builder,Flash Media Server,我在flash Builder 4.6上制作了一个flash聊天应用程序,该应用程序连接到centos5 32位服务器上的flash Media(Development)服务器,问题是当我在浏览器中将其打开约2分钟空闲时,然后尝试调用netconnection以获取聊天历史记录或发送公共消息,或使用nc.call()方法调用服务器端的函数,它突然显示netconnection.connect.closed。。除非我打电话,否则它不会给我联系的 当这种情况发生时,我正在查看fms管理控制台中的活动
感谢阅读..Hm,如果
NetConnection
使用套接字工作,那么据我所知,在Windows上,确定套接字是否已关闭的唯一方法是尝试向其写入内容;如果失败,则它已被关闭-因此call()
在长时间空闲后实际关闭连接
当您关闭浏览器或调用nc.close()
时,这是一个特定的请求-通常在服务器上,您还可以实现类似“如果我在X秒内没有收到任何消息,请断开套接字连接”的请求,这将触发客户端的回调
我将实现一种keep-alive;每隔15/30秒,向服务器发送一个简单的ping,这将保持连接打开