我目前正在用ActionScript 3编写一个客户端,它通过Red5对象与Red5应用程序/媒体服务器对话。服务器通过此连接发送客户端多种类型的数据,包括视频、音频和远程过程调用。经过一段不确定的时间(有时是10秒,有时是10分钟),我在Flash客户端的调试版本中的弹出式窗口中看到了以下错误:
"Error: Error #2030: End of file was encountered."我正在努力找出导致这个错误的原因,而真正让我抓狂的是,我似乎无法理解它。我意识到这个错误可能意味着一些低级的网络读取失败,但是它在调试闪存播放器中生成一个弹出窗口这一事实意味着我应该能够捕获它。
由于错误没有关联的堆栈跟踪,所以我甚至在基本Sprite对象上添加了一个未指定的异常处理程序:
public class MyClient extends Sprite
{
public function FOWClient()
{
loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR, uncaughtErrorHandler);
}
private function uncaughtErrorHandler(event:UncaughtErrorEvent):void
{
trace("UNCAUGHT EXCEPTION!!!");
}
}如果我故意提交一些错误,那么我的非常规异常处理程序将被正确地调用,但是当这个Error #2030发生时,它永远不会被调用。
所以有两种结果我是可以接受的:
我很肯定我已经把它缩小到了必须从我的服务器到我的客户端进行RPC调用,因为当我禁用这些调用时,但是保留音频和视频,我没有看到这个问题。不幸的是,除此之外,我还没有任何好的想法。
任何帮助都是非常感谢的。谢谢!
发布于 2011-03-31 00:02:01
如果未添加适当的侦听器,则会引发其中一些错误。
您是否正在侦听来自网络连接的asyncError和ioError事件?
如果没有,就试一试。
发布于 2012-05-29 06:15:34
try
{
}
catch( e : EOFError )
{
trace( e ); // EOFError: Error #2030: End of file was encountered.
}https://stackoverflow.com/questions/5493670
复制相似问题