2015-04-14 2 views
2

Я использую следующий код для загрузки больших файлов на Google Диск. Как я могу показать прогресс как числовой процент?Загрузите на 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(); 
    } 

} 

upload.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> 
+0

Возможно дублировать с этим один: http://stackoverflow.com/questions/18813966/progress-bar-in-google-drive-upload – gui47

+0

Спасибо, полезно, ^^, нет, это ISN дубликат, потому что его не многократное использование chuncs его один файл одной загрузки, совершенно другая система, но я пытаюсь это теперь, возможно, его лучше && –

+0

https://developers.google.com/drive/web/manage-uploads#resumable действительно ответ. Вам нужно вырезать файл самостоятельно и поднять индикатор прогресса после каждого фрагмента. Например. ваш файл равен 10 МБ: разбивайте его на 10 х 1 Мбайт кусков, после загрузки каждого фрагмента добавьте 10% к счетчику прогресса. – pinoyyid

ответ

1

Существует полная статья о том, как использовать Google Drive API, используя только чистый JavaScript. В статье используется внешний файл (JQuery), известный как MediaUploader. Здесь вы можете протестировать быстрое демо.

Demo of the google drive using javascript completely

+1

Обратите внимание, что [ссылки только ответы] (http://meta.stackoverflow.com/tags/link-only-answers/info) обескуражены, SO ответы должны быть конечной точкой поиска решения (а также еще одна остановка ссылок, которые со временем устаревают). Пожалуйста, подумайте о добавлении отдельного резюме здесь, сохранив ссылку в качестве ссылки. – kleopatra

Смежные вопросы