Upload a Amazon S3 directo desde OpenFL / Haxe

27 sep 2014 by shadow_of__soul, No Comments »

openfl-logo

Hoy les tengo un post chiquito, mas anuncio que otra cosa. He liberado una libreria, que permite subir archivos directamente a S3 desde OpenFL (con ayuda de un servidor para calcular el acceso, permisos, etc..). Algo que resulto particularmente dificil, por que OpenFL no soporta correctamente por medio de Loader un request PUT, asi que los metodos tradicionales de subir archivos a S3, que usualmente son asi, no servian. Opte por “emular” una subida de archivos multiform/data como si fuera un form html, pero desde OpenFL.

El uso es basante sencillo, aca hay esta el ejemplo incluido en el repositorio:

1
2
3
4
5
6
7
8
9
10
11
var exampleImage:BitmapData = new BitmapData(800, 600, false, 0xff0000);
S3Utils.getPolicyS3(function(resultJson:Dynamic, args:Dynamic):Void {
S3Utils.uploadToAmazon(resultJson.url, { "key":"folderExample/${filename}", "AWSAccessKeyId":resultJson.uploadObj.s3Key, "acl":"public-read", "success_action_redirect":resultJson.uploadObj.s3Redirect, "policy":resultJson.uploadObj.s3PolicyBase64, "signature":resultJson.uploadObj.s3Signature }, S3Utils.getBytesArrayBitmap(exampleImage), "/folderExample/exampleImage.png", "image/png", function(result:Dynamic):Void {
statusTxt.text = "Uploaded !";
},function(failreason:Dynamic):Void {
statusTxt.text = "Failed Upload !";
});

},function(failReason:String):Void {
statusTxt.text = "Failed to get S3 Policy !";
});

Permite subir cualquier archivos, definir permisos, tamanio maximo, reglas de archivos o formatos etc.. igual como define la specificacion de la API en amazon, aqui

Pensamos ampliar la libreria con muchas mas funciones, asi que esten atentos :)

Pueden bajar el codigo fuente y los ejemplos de uso, directamente desde el repo de Ipsilon Developmentshttps://github.com/ipsilondev/S3UtilsOpenFL

Etiquetas: , , , ,

Sigueme !

Follow Me! Follow Me! Follow Me!