簡體   English   中英

上傳到Google雲端硬盤-如何使用base64編碼的圖像或圖像路徑

[英]Uploading to Google Drive - how to use a base64-encoded image or an image path

對Javascript來說還很陌生,在嘗試了很多嘗試之后仍然遇到了這個問題:

我正在使用http://ngcordova.com/docs/plugins/camera/在手機上捕獲圖像,並且可以將其檢索為base64編碼的圖像或圖像位置的路徑(file:// storage /仿真/...jpg)。

接下來,我正在使用此文件將文件上傳到Google驅動器: https : //github.com/googledrive/cors-upload-sample

我已成功上傳帶有給定示例的文本文件:

* @example
 * var content = new Blob(["Hello world"], {"type": "text/plain"});
 * var uploader = new MediaUploader({
 *   file: content,
 *   token: accessToken,
 *   onComplete: function(data) { ... }
 *   onError: function(data) { ... }
 * });
 * uploader.upload();

但是,當我上傳圖像時,無法查看它,我認為這是因為我將其編碼錯誤。

到目前為止,這是我嘗試過的方法:

  • 直接使用base64編碼的imagedata
  • 創建圖片/ jpeg類型的斑點並將64編碼的圖像數據放入其中
  • 在imagedata前面附加“ data:image / jpeg; base64”
  • 此人的建議: https : //stackoverflow.com/a/27197907/5568940

是否還可以使用FileReader代替將圖像路徑讀取到File中? 對於上述示例代碼,我只是無法弄清楚圖像的“文件:內容”部分到底應該輸入什么。

任何幫助將不勝感激!

上載需要原始圖像字節。

尚未嘗試過,但是最簡單的方法可能是處理圖像URL,您可以將其解析為文件(也是blob :)

就像是:

window.resolveLocalFileSystemURL(uri, function(fileEntry) { var errorHandler = ...; fileEntry.file(function(file) { var uploader = new MediaUploader({ file: file, token: accessToken, onComplete: function(data) { ... } onError: function(data) { ... } }); uploader.upload(); }, errorHandler); });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM