![]() |
|
||||||||||
|
|||||
|
Регистрация: Sep 2009
Сообщений: 2
|
Здравствуйте.
Есть задача: формировать POST-запрос на адрес. Запрос должен содержать поля file1-file5, которые содержат файлы с изображениями (JPG, PNG, BMP или GIF). У меня есть DisplayObject, пробую это сделать так, но ничего не выходит. Подскажите как сделать, чтоб отправлялись файлы. var profile:Object = new Object(); for each (var field:XML in e.*) { if(field.name().toString() == "upload_url") { uploadHref = field.toString(); break; } } var bd:BitmapData = new BitmapData(FormPointer.ImagesFull.content.width, FormPointer.ImagesFull.content.height, true,0xFFFFFFFF); bd.draw(FormPointer.ImagesFull.content); var output:String = ""; // Iterate through each of the pixels, and add their color to the output string for(var i:Number=0;i<bd.width;i++) { for(var j:Number=0;j<bd.height;j++) { output+=bd.getPixel(j,i).toString(16); for (var z=0; z<6-bd.getPixel(j,i).toString(16).length; z++) { output+="0"; } } } var scriptRequest:URLRequest = new URLRequest(uploadHref); var header:URLRequestHeader = new URLRequestHeader("Content-Type", "multipart/form-data"); var scriptLoader:URLLoader = new URLLoader(); var scriptVars:URLVariables = new URLVariables(); scriptRequest.requestHeaders.push(header); scriptLoader.addEventListener(Event.COMPLETE, completeHandler); scriptLoader.addEventListener(IOErrorEvent.IO_ERROR, handleLoadError); scriptVars.file1 = output; scriptRequest.method = URLRequestMethod.POST; scriptRequest.data = scriptVars; scriptLoader.load(scriptRequest); function handleLoadError($evt:IOErrorEvent):void { trace("Message failed."); } |
|
|||||
|
чета я ничего не понял: вы говорите, что отсылаете файлы, а сами в output кладете значения пикселей в строковом виде?
вы уж определитесь, или вы отправляете файлы или строку зы: а вот это вообще АЦЦКИ ЖЖЕТ:
__________________
я могу стать всем, если только захочу |
|
|||||
|
Регистрация: Sep 2009
Сообщений: 2
|
А как по другому?
Я уже зашился, и не понимаю как отправить POST Запросом 5 файлов. Имея их в DisplayObject (UILoader). Думал пикселями, но видимо не правильно думал Добавлено через 2 минуты Уже переделал так, посылает байты нормально. но результат тот же : ( function GetUploadHref(e:XML) { var profile:Object = new Object(); for each (var field:XML in e.*) { if(field.name().toString() == "upload_url") { uploadHref = field.toString(); break; } } var bd:BitmapData = new BitmapData(FormPointer.ImagesFull.content.width, FormPointer.ImagesFull.content.height, true,0xFFFFFFFF); bd.draw(FormPointer.ImagesFull.content); var jpgEncoder:JPGEncoder = new JPGEncoder(80); var png_image_data:ByteArray = jpgEncoder.encode(bd); var scriptRequest:URLRequest = new URLRequest(uploadHref); var header:URLRequestHeader = new URLRequestHeader("Content-Type", "multipart/form-data"); var scriptLoader:URLLoader = new URLLoader(); var uv:URLVariables = new URLVariables(); uv.file1 = Base64.encodeByteArray(png_image_data);; scriptLoader.addEventListener(Event.COMPLETE, completeHandler); scriptLoader.addEventListener(IOErrorEvent.IO_ERROR, handleLoadError); scriptRequest.method = URLRequestMethod.POST; scriptRequest.data = uv; scriptRequest.requestHeaders.push(header); scriptLoader.load(scriptRequest); function handleLoadError($evt:IOErrorEvent):void { trace("Message failed."); } } |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:12. |
|
|
« Предыдущая тема | Следующая тема » |
|
|