1
我在使用AS3腳本將數據上傳到服務器時遇到了一些麻煩,然後從PHP上傳腳本中返回一些值。我正在使用FileReference.upload()函數,並且文件正在成功上載,但附加到DataEvent.UPLOAD_COMPLETE_DATA事件的eventListener未觸發。當文件完成上傳時,有什麼事情可以在PHP的結尾處手動觸發此事件?DataEvent.UPLOAD_COMPLETE_DATA無法解決問題
AS3:
private function onFileLoaded(event:Event):void {
//var _fileReference:FileReference = event.target as FileReference;
//var data:ByteArray = fileReference["data"];
//var filename:String = fileReference.name;
var urlRequest:URLRequest = new URLRequest("http://www.arttoframes.com/canvasSystems/uploadImage.php");
urlRequest.method = URLRequestMethod.POST;
fileReference.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, onUploadComplete);
fileReference.upload(urlRequest);
}
private function onFileLoadError(event:Event):void {
fileReference.removeEventListener(Event.COMPLETE, onFileLoaded);
fileReference.removeEventListener(IOErrorEvent.IO_ERROR, onFileLoadError);
}
private function onUploadComplete(event:Event):void {
trace("ok");
fileReference.removeEventListener(DataEvent.UPLOAD_COMPLETE_DATA,onUploadComplete);
var thumbReferenceName = fileReference.name.substr(0,fileReference.name.indexOf("."))+"_thumb"+fileReference.name.substr(fileReference.name.indexOf("."),4)+"?nocache=" + new Date().getTime()
var urlRequest:URLRequest = new URLRequest("http://www.arttoframes.com/canvasSystems/uploads/Thumbnails/"+thumbReferenceName);
var urlLoader:Loader = new Loader();
urlLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onDownloadComplete);
//urlLoader.load(urlRequest);
}
哇,這是阻止我的項目死在它的軌道。 DataEvent.UPLOAD_COMPLETE_DATA是我從上傳腳本獲取URLvar數據的唯一方法。監控進度將不起作用,因爲它不會返回來自PHP的數據。任何人都有運氣解決這個問題? –
Jira票據中還包含其他解決方法,這些解決方案討論可以如何獲取URL數據,但是您可能必須重組您的工作方式。可能將該數據保存到會話並進行第二次調用以檢索它。不是我們想如何解決這個問題,但是你可以解決這個問題。 – chubbsondubs