次のように、URLLoader を使用して Binary ByteArray をサーバーに送信できます。
var urlRequest : URLRequest = new URLRequest();
urlRequest.url = 'path to your server';
urlRequest.contentType = 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary();
urlRequest.method = URLRequestMethod.POST;
urlRequest.data = UploadPostHelper.getPostData( 'image.jpg', byteArray );
urlRequest.requestHeaders.push( new URLRequestHeader( 'Cache-Control', 'no-cache' ) );
// create the image loader & send the image to the server:<br />
var urlLoader : URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.load( urlRequest );
最初に画像のビットマップデータを取得します:
// set up a new bitmapdata object that matches the dimensions of the captureContainer;
var bmd : BitmapData = new BitmapData( captureContainer.width, captureContainer.height, true, 0xFFFFFFFF );
// draw the bitmapData from the captureContainer to the bitmapData object:<br />
bmd.draw( captureContainer, new Matrix(), null, null, null, true );
次に、byteArray を取得します。
var byteArray : ByteArray = new JPGEncoder( 90 ).encode( bmd );
上記の URLLoader コードを使用して、画像をサーバーに送信します。
FileReference.upload から得られるようなファイル アップロードの進行状況が得られないことを除けば、問題なく動作します。URLLoader を使用してアップロードの進行状況を機能させることができる場合は、ここに回答を投稿してください。