开发者

Flex HTTPservice and POST, Sending Files?

I use a basic Post to send data to a Django server.

The data consists of a base64 encoded 640*380 PNG image dynamically created by the flex component.

<mx:HTTPService id="formSend" showBusyCursor="true" 
    useProxy="false" url="http://127.0.0.1/form/" 
    method="POST" result="formSentConfirmation(event)"    fault="formSendingFailed(event)"/>



private function sendForm(url:String, message:String, meteo:Number):void {
    formSend.url = url;
    var params:Object = { message: message, image_data: getEncodedImage() }; 
    snapButton.label = "sending ...";
    formSend.send(p开发者_开发知识库arams);
}

On the server side i can see that the data is in the request.POST not in request.FILES. That means the image is not send as a File with multiencode HTTP.

  1. Will i get into trouble on a real server ? since the limit is 200k for urlencoded POST var.

  2. How to make HTTPservice send the data as a file?

  3. Any other solutions?

Thanks


Found something interesting than we can dig on it. Use this:

var urlLoader:URLLoader = new URLLoader();
    urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
    urlLoader.data = _img.data;
    urlLoader.addEventListener(Event.COMPLETE,LoadedComplete);

    var request:URLRequest = new URLRequest("www.url.com?toto=toto");
    request.method = URLRequestMethod.POST
    request.contentType = "multipart/form-data";
    request.data = _img.data;
    request.requestHeaders = new Array(new URLRequestHeader("toto", "toto"));

    urlLoader.load(request);

Well with that i get something in C# server side the request content length is not empty and i got toto in the params and in the header, one problem in files collection there are no files sent ... where are the sent bytes ???


  1. Probably, yes. It depends whether you impose a hard limit on the the file size and how the destination page handles the request.

  2. I don't believe it's actually possible at the moment.

  3. Read this. FileReference is the recommended way of uploading files.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜