AS3のFileReference.postData的なもの
2008年06月10日 - doke
以前書いたFileReference.postDataのAS3版を探していたらちゃんとありました。リファレンスでは見つけられなくて野中さんのFileReference.onUploadCompleteDataイベントで発見しました。ありがとうございます。
URLLoader.dataなどと違ってflash.events.DataEvent.UPLOAD_COMPLETE_DATA というイベントに含められて渡されるようです。
以下、DataEventの詳細はLiveDocsより引用します。
http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/net/FileReference.html#event:uploadCompleteData
プロパティ 値 bubblesfalsecancelablefalseは、キャンセルするデフォルトの動作がないことを示します。currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 dataファイルのアップロードが正常に終了した後、サーバーから返される未処理のデータです。 targetアップロードが正常に終了した後、データを受信する FileReference オブジェクトです。
受け取った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] }
- 777Project
- AfterEffects
- AIR
- android
- Arduino
- AS2
- AS3
- as3
- BitmapData
- CHECKMATE
- crossdomain
- CS4
- Date
- DisplacementMapFilter
- Event
- event
- ExternalInterface
- FileReference
- Flash Lite
- FlashDevelop
- FlashPlayer10
- flash時計
- Flex
- flv
- Font
- GoogleMapsAPI
- INFINITY TANK BATTLE
- JSFL
- JSON
- Mobile
- mxp
- PaperVision3D
- Particle
- Progression
- Sound
- TextField
- Tips
- tool
- trace
- wonderfl
- Wonderfl
- xml
- アニメーション
- サンプルコード
- タイムライン
- デバッガ
- バグ
- フレーム
- ブログパーツ
- 爆速







