AS3 - 显示闪存和 PHP 之间的数据传输进度


AS3 - Display data transfer progress between Flash and PHP

如何显示Flash和PHP之间数据传输的进度?下面是我用来通过 PHP 上传 base64 编码图像的 AS3 代码。

var scriptLoader:URLLoader = new URLLoader();
var scriptVars:URLVariables = new URLVariables();
var scriptRequest:URLRequest = new URLRequest("https://www.example.com/sendit.php");
var imagedata = Base64.encode(mybitmap);
scriptVars.theimage = imagedata
scriptRequest.method = URLRequestMethod.POST;
scriptRequest.data = scriptVars;
scriptLoader.load(scriptRequest);

(服务器正在运行 PHP 版本 5.3.10)

您可以在 scriptRequest for ProgressEvent.PROGRESS 上添加事件侦听器来监视加载完成情况。事件回调将包含要监视的 bytesLoaded 和 bytesTotal。

进度事件参考:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/ProgressEvent.html

scriptRequest.addEventListener(ProgressEvent.PROGRESS, onProgress);
function onProgress(e:ProgressEvent):void {
   trace(e.bytesLoaded + " of " + e.bytesTotal);
}