0

event.bytesTotal = 0当我从 ftp 服务器加载某些 mp3 文件时,我得到了结果。但是
当从本地服务器加载相同的文件时,调用event.bytesTotal运行良好 - 给出了预期的结果。

这是我的代码:

 public function LoadedBytes()
        {
            var byteLoader:URLLoader = new URLLoader();
            byteLoader.dataFormat = URLLoaderDataFormat.BINARY;

            var fileRequest:URLRequest = new URLRequest();

            myFile =new File();
            myFile=File.desktopDirectory; 
            myFileStream = new FileStream();

            fileRequest.url="http://minhajproductions.in/irfanulquran/Al-Fatihah/4.mp3";

            myFile=File.desktopDirectory;  
            myFile=myFile.resolvePath("sound/4.mp3");

            try{
                byteLoader.addEventListener(ProgressEvent.PROGRESS,onProgress);
                byteLoader.load(fileRequest);
            }catch(e:IOError){
                trace("unable to load requested sound")
            }



        }

        protected function onProgress(event:ProgressEvent):void
        {
            trace(event.bytesLoaded,event.bytesTotal," length");
            //progressCB((event.bytesLoaded/event.bytesTotal));

        }

为什么会发生这种奇怪的事情?提前致谢。

4

2 回答 2

1

我的问题是我的服务器端缺少 Content-Length 标头。Flash 使用它可以找到下载进度。

于 2015-03-03T13:22:46.120 回答
0

我认为你的端有问题。尝试从其他地方运行相同的程序。

我发现了一篇文章event-bytestotal-returns-0

检查给出Chunked_transfer_encoding链接的第一个答案以获取更多信息。

于 2014-02-14T10:55:28.213 回答