You can try to create the form by javascript and submit it without any AJAX:
var form = angular.element('<form>',{
action:"https://abucket.s3.amazonaws.com/",
//...
method:"POST",
css: {display:"none"} // For keeping layout unchanged
});
form.append( angular.element('<input type="hidden">').attr('name','key').val('raw/${filename}'));
// --- Create other input similar to above's one -----
//Then submit it
form.appendTo("body") // Firefox: does not submit the form unless it's a part of the DOM
.submit()
.remove(); // Removing temporarily created "form" from the DOM