Flex Multipart上传进度

asa*_*ams 6 apache-flex file-upload urlloader

我正在使用multipart将文件上传到服务器URLLoader.我可以上传文件.我试图在URLLoader上侦听progress事件,但它只在上传的最后触发.如何通过上传更加一致地获得进度事件?

Boz*_*zho 2

有一个进度条:

<mx:ProgressBar width="100%" id="progBar" mode="manual" />
Run Code Online (Sandbox Code Playgroud)

注册进度事件处理程序:

refUploadFile.addEventListener(ProgressEvent.PROGRESS, onUploadProgress);
Run Code Online (Sandbox Code Playgroud)

并处理它:

private function onUploadProgress(event:ProgressEvent):void {
        var numPerc:Number = Math.round(
            (Number(event.bytesLoaded) / Number(event.bytesTotal)) * 100);
        progBar.setProgress(numPerc, 100);
        progBar.label = numPerc + "%";
        progBar.validateNow();
}
Run Code Online (Sandbox Code Playgroud)

如果您的文件很小,接收不到很多事件是正常的。尝试使用更大的文件。

  • UrlLoader 仅在下载操作时触发 ProgressEvent,因此当所有文件上传且您正在下载页面时,itf 会触发第一个事件。您不能用它来监控上传 (3认同)