Apache flex FileReference.upload是否非异步?

Apache flex FileReference.upload是否非异步?,apache-flex,asynchronous,upload,filereference,Apache Flex,Asynchronous,Upload,Filereference,我是一个有点灵活的人,但我在任何地方都找不到这个问题,也找不到合适的解决方法。我非常习惯于获取/发布和web交互,但我对使用mxml之类的工具还不熟悉。请参阅下面的函数 private function uploadFileSelect(event:Event):void { var uploadURL:String = Application.application.parameters.UploadURL; var urlStr:String = ExternalInter

我是一个有点灵活的人,但我在任何地方都找不到这个问题,也找不到合适的解决方法。我非常习惯于获取/发布和web交互,但我对使用mxml之类的工具还不熟悉。请参阅下面的函数

private function uploadFileSelect(event:Event):void 
{
    var uploadURL:String = Application.application.parameters.UploadURL;
    var urlStr:String = ExternalInterface.call('window.location.href.toString');
    var queryMap:Object = getQueryParams(urlStr);

    var request:URLRequest = new URLRequest(uploadURL);
    var urlVars:URLVariables = new URLVariables();
    urlVars.appid = queryMap.appid;
    urlVars.str = queryMap.str;
    request.method = "POST";
    request.data = urlVars;

    uploadFileRef.upload(request);              
}
从本质上说,这完全符合我的需要,只有一个例外。最后一个对.upload的调用是异步的,因此我停留在当前页面上,但它在后台调用上载URL。我希望它像一个表单一样,实际导航到带有POST数据的上传URL。我觉得这应该是一个简单的解决方案,但我有点被抛到了其他人的flash代码上,需要一些建议


提前谢谢

因为它是异步的,所以不能像在Html表单中那样从UI实现重定向。作为解决方法,您可以将侦听器添加到
uploadFileRef

uploadURL = "someurl";

uploadFileRef.addEventListener(Event.complete, function(e:Event){
  navigateToURL(new URLRequest(uploadURL),'_self')
});

导航url将使您找到目标url。我不知道你将如何获得上传的url,我假设它是你上传文件的url

谢谢你的帮助!结合我刚刚发现的,我想我甚至可以在那里添加图像!