问题
I know how to upload a file using action script
See upload a zip file using HTTP POST via actionscript 3.0 for details.
Code replicated here:
var urlRequest:URLRequest = new URLRequest(PUBLISH_ZIP_FILE_URL);
// set to method=POST
urlRequest.method = URLRequestMethod.POST;
var params:URLVariables = new URLVariables();
params['data[File][title]'] = 'Title1';
params['data[File][description]'] = 'desc';
// this is where we include those non file params and data
urlRequest.data = params;
// now we upload the file
// this is how we set the form field expected for the file upload
file.upload(urlRequest, "data[File][filename]");
The web app responsible for accepting the file upload will return a JSON string containing details such as file size, id number, etc.
How do I access this JSON result string in my actionscript?
回答1:
From the FileReference docs, you need to add a handler to your FileReference
instance for the uploadCompleteData
event:
import flash.events.*;
// now we upload the file
// this is how we set the form field expected for the file upload
file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, uploadCompleteDataHandler);
file.upload(urlRequest, "data[File][filename]");
private function uploadCompleteDataHandler(event:DataEvent):void
{
trace("uploadCompleteData data: " + event.data);
}
来源:https://stackoverflow.com/questions/10914363/how-to-retrieve-json-result-after-file-upload-via-actionscript