Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var _vars:URLVariables = new URLVariables();
- _vars.uploadDataFieldName = 'bytes';
- var _request:URLRequest = new URLRequest(_url);
- _request.method = URLRequestMethod.POST;
- _request.contentType = 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary();
- _request.requestHeaders.push(new URLRequestHeader('Cache-Control', 'no-cache'));
- _request.data = UploadPostHelper.getPostData('file.png', bytes, _vars);;
- _loader.addText(_request);
- _loader.load();
- public static function getPostData(fileName:String, byteArray:ByteArray, parameters:Object = null):ByteArray {
- var i:int;
- var bytes:String;
- var postData:ByteArray = new ByteArray();
- postData.endian = Endian.BIG_ENDIAN;
- if (parameters == null)
- parameters = new Object();
- parameters.Filename = fileName;
- for (var name:String in parameters){
- postData = BOUNDARY(postData);
- postData = LINEBREAK(postData);
- bytes = 'Content-Disposition: form-data; name="' + name + '"';
- for (i = 0; i < bytes.length; i++)
- postData.writeByte(bytes.charCodeAt(i));
- postData = LINEBREAK(postData);
- postData = LINEBREAK(postData);
- postData.writeUTFBytes(parameters[name]);
- postData = LINEBREAK(postData);
- }
- postData = BOUNDARY(postData);
- postData = LINEBREAK(postData);
- var uploadDataFieldName:String = "Filedata";
- if (parameters && parameters.uploadDataFieldName)
- uploadDataFieldName = parameters.uploadDataFieldName
- bytes = 'Content-Disposition: form-data; name="' + uploadDataFieldName + '"; filename="';
- for (i = 0; i < bytes.length; i++)
- postData.writeByte(bytes.charCodeAt(i));
- postData.writeUTFBytes(fileName);
- postData = QUOTATIONMARK(postData);
- postData = LINEBREAK(postData);
- bytes = 'Content-Type: application/octet-stream';
- for (i = 0; i < bytes.length; i++)
- postData.writeByte(bytes.charCodeAt(i));
- postData = LINEBREAK(postData);
- postData = LINEBREAK(postData);
- postData.writeBytes(byteArray, 0, byteArray.length);
- postData = LINEBREAK(postData);
- postData = LINEBREAK(postData);
- postData = BOUNDARY(postData);
- postData = LINEBREAK(postData);
- bytes = 'Content-Disposition: form-data; name="Upload"';
- for (i = 0; i < bytes.length; i++)
- postData.writeByte(bytes.charCodeAt(i));
- postData = LINEBREAK(postData);
- postData = LINEBREAK(postData);
- bytes = 'Submit Query';
- for (i = 0; i < bytes.length; i++)
- postData.writeByte(bytes.charCodeAt(i));
- postData = LINEBREAK(postData);
- postData = BOUNDARY(postData);
- postData = DOUBLEDASH(postData);
- return postData;
- }
- Aleksandr Dev
Add Comment
Please, Sign In to add comment