2016-11-15 34 views
0

爲什麼我無法上傳使用mdg:camera拍攝圖像的結果?我已經閱讀了無數AWS S3上傳論壇和Meteor相機UI論壇,但無法找到將數據URI文件上傳到S3的正確方法。我試圖將其轉換爲Blob,文件,數據URL,數據URI,畫布,窗體,都無濟於事。Meteor Android將數據URI上傳到Amazon S3

如果我只是上傳一個文件,它完美的工作,但從一個數據URI文件開始它不。沒有錯誤,但它只是沒有做任何事情。

Meteor.CameraUI.getPicture({ 
    quality: 50 
}, function(error, data){ 
    S3.upload({ 
     files: data, 
     path: '/' 
     }, function(e, r){ 
     console.log(r); 
    }); 
}); 

回答

0

您需要將其轉換爲blob,然後添加一個name屬性。這些上傳非常易變,並且通常只會上傳一個空文件。

我使用此實用程序的URI轉換爲一個blob:

https://github.com/blueimp/JavaScript-Canvas-to-Blob

還有一點點這樣的代碼:

var blob = dataURLtoBlob(dataUrl); 
blob.name = "filename.png"; 

您應該能夠將BLOB發送到S3從那裏。

+0

有很多這樣的答案遍佈整個相似的問題。我的問題特別是使用從MDG返回的數據URI:Meteor的相機包。 Amazon S3似乎不接受「Blob」作爲「文件」。我試過使用Canvas將其轉換爲Blob,但它只是每次都上傳空文件。 – chriskgregory