0

as3でファイルをサーバーにアップロードするには? FileReference.browse() を使用してファイルを参照したくありません。URLLoader を使用してファイルを取得し、byteArray に変換しようとしましたが、URLVariables を使用してサーバーに送信すると、IOError=2032 が返されます。サーバー上のデータベースを更新したい。構造は email (string) sqlite_db (Blob) のようになります

これらの変数の両方を 1 つのリクエスト内で送信する必要があります。何か案が!

4

1 に答える 1

2

マルチパート データ フォームを作成するための優れたクラスであるUploadPostHelperを使用すると、アップロード プロセスがはるかに簡単になります。

ByteArray byteArray = [YOUR FILE DATA];

var urlRequest : URLRequest = new URLRequest();
urlRequest.url = 'http://your.server.com/destination';
urlRequest.contentType = 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary();
urlRequest.method = URLRequestMethod.POST;
urlRequest.data = 
    UploadPostHelper.getPostData( 
        'filename.ext', 
        byteArray, 
        { 
            email:"emailParameter", 
            other:"otherParameter" 
        } );
urlRequest.requestHeaders.push( new URLRequestHeader( 'Cache-Control', 'no-cache' ) );

// create a loader & send the file to the server;
var urlLoader : URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.load( urlRequest );

もちろん、完全なイベントをリッスンして、サーバーからの情報を返すこともできます。それが役立つことを願っています。

于 2012-09-03T22:19:17.277 に答える