Como fazer upload de imagens do FileReader para o Amazon s3, usando meteor

Estou tentando construir um uploader de imagens com meteoro para o Amazon S3. Graças a Hubert OG, encontreiAWS-SDK o que facilita as coisas.

Meu problema é que os dados enviados parecem estar corrompidos. Quando eu baixar o arquivo, o arquivo pode estar corrompido. Provavelmente é.

Inserir os dados em uma imagem src funciona e a visualização da imagem é exibida como deveria, portanto, o arquivo original e, provavelmente, os dados estão corretos.

Estou carregando o arquivo com o FileReader e, em seguida, passo os dados do resultado para o método putObject do AWS-SDK.

        var file=template.find('[type=file]').files[0];
        var key="uploads/"+file.name;

        var reader=new FileReader();
        reader.onload=function(event){
            var data=event.target.result;
            template.find('img').src=data;
            Meteor.call("upload_to_s3",file,"uploads",reader.result);
        };

        reader.readAsDataURL(file);

e este é o método no servidor:

    "upload_to_s3":function(file,folder,data){
        s3 = new AWS.S3({endpoint:ep});
        s3.putObject(
            {
                Bucket: "myportfoliositebucket",
                ACL:'public-read',
                Key: folder+"/"+file.name,
                ContentType: file.type,
                Body:data
            },
            function(err, data) {
                if(err){
                    console.log('upload error:',err);
                }else{
                    console.log('upload was succesfull',data);
                }
            }
        );
    }

questionAnswers(2)

yourAnswerToTheQuestion