私は最終的にBlobを作成し、それをFlow
のファイル配列にプッシュするソリューションを見つけました!
This StackOverflow answerも役に立ちました.Blobを作成するためにデータのuri形式のイメージをバイナリに変換する必要がありました(関数dataURItoBlob()
は私のためにそれを行いました)。
は、ここでそれをやったコードです:
function uploadImage($flow) {
if ($flow) {
// 'vm.img.cropped' is the image in data uri format to upload
var blob = dataURItoBlob(vm.img.cropped);
blob.name = 'file.png';
var file = new Flow.FlowFile($flow, blob);
$flow.files.push(file)
$flow.upload();
}
}
function dataURItoBlob(dataURI) {
var binary = atob(dataURI.split(',')[1]);
var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
var array = [];
for(var i = 0; i < binary.length; i++) {
array.push(binary.charCodeAt(i));
}
return new Blob([new Uint8Array(array)], {type: mimeString});
};