以前書いたFileReference.postDataのAS3版を探していたらちゃんとありました。リファレンスでは見つけられなくて野中さんのFileReference.onUploadCompleteDataイベントで発見しました。ありがとうございます。

URLLoader.dataなどと違ってflash.events.DataEvent.UPLOAD_COMPLETE_DATA というイベントに含められて渡されるようです。

以下、DataEventの詳細はLiveDocsより引用します。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
dataファイルのアップロードが正常に終了した後、サーバーから返される未処理のデータです。
targetアップロードが正常に終了した後、データを受信する FileReference オブジェクトです。
http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/net/FileReference.html#event:uploadCompleteData

受け取ったDataEvent.dataプロパティはStringで、XMLなりJSONとして処理することができます。

import flash.events.DataEvent; import flash.net.FileReference; import flash.net.URLRequest; import com.adobe.serialization.json.JSON; var fileRef:FileReference = new FileReference(); fileRef.addEventListener( Event.SELECT, onSelectFile ); fileRef.addEventListener( DataEvent.UPLOAD_COMPLETE_DATA, onUploadData ); fileRef.browse(); function onSelectFile( e:Event ) { var url :URLRequest = new URLRequest("/example/api/path"); fileRef.upload( url ); } // JSONを受け取ってみる function onUploadData( e :DataEvent ) { trace( e.data ); // { "success": 1 } trace( JSON.decode( e.data ) ); // [Object Object] }

HTML5飯