【问题标题】:Upload to Google Drive and show progress percentage上传到 Google Drive 并显示进度百分比
【发布时间】:2015-04-14 15:55:54
【问题描述】:

我正在使用下面的代码将大文件上传到 Google 云端硬盘。如何将进度显示为数字百分比?

我不想显示进度条,只显示“20%”之类的百分比。

server.gs

function doGet(e) {
  return HtmlService.createHtmlOutputFromFile('upload.html');
}

function uploadFiles(form) {

  try {

    var dropbox = "uploads";
    var folder, folders = DriveApp.getFoldersByName(dropbox);

    if (folders.hasNext()) {
      folder = folders.next();
    } else {
      folder = DriveApp.createFolder(dropbox);
    }

    var blob = form.myFile;    
    var file = folder.createFile(blob);    
    file.setDescription("VideoName_Number: " + form.myName);

    return "Episode uploaded successfully " + file.getUrl();

  } catch (error) {

    return error.toString();
  }

}

上传.html

<div>
  <form id="myForm">
      <input type="text" name="myName" placeholder="VideoName_Number">
      <input type="file" name="myFile">
      <input type="submit" value="Upload Anime" 
             onclick="this.value='Uploading..';
                      google.script.run.withSuccessHandler(fileUploaded)
                      .uploadFiles(this.parentNode);
                      return false;">
  </form>

  <div id="output"></div>

  <script>
      function fileUploaded(status) {
          document.getElementById('myForm').style.display = 'none';
          document.getElementById('output').innerHTML = status;
      }
  </script>

  <style>
   input { display:block; margin: 20px; }
  </style>
</div>

【问题讨论】:

  • 谢谢,有用,^^,不,它是重复的,因为它不是多次使用 chuncs,它一个文件一个上传,完全不同的系统,但我现在尝试它可能更好&&
  • developers.google.com/drive/web/manage-uploads#resumable 确实是答案。您需要自己对文件进行分块,并在每个分块后碰撞进度指示器。例如。您的文件为 10MB:将其分成 10 x 1MB 块,上传每个块后,将 10% 添加到您的进度计数器。
  • @pinoyyid,我已经做到了,但是使用php客户端库,在文件完成上传之前无法获取块状态,请您看一下:@ 987654323@
  • 不要使用库。直接调用rest就行了。这很容易

标签: javascript php google-drive-api


【解决方案1】:

有一篇关于如何仅使用纯 javascript 使用 google drive api 的完整文章。本文使用称为 MediaUploader 的外部文件 (Jquery)。您可以在这里测试一个快速演示。

Demo of the google drive using javascript completely

【讨论】:

  • 请注意 link-only answers 是不鼓励的,所以答案应该是寻找解决方案的终点(与另一个中途停留的参考相比,随着时间的推移往往会变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。
猜你喜欢
  • 1970-01-01
  • 2017-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-23
  • 1970-01-01
  • 2016-02-22
相关资源
最近更新 更多