2

我正尝试使用也作为网络应用程序部署的Google Apps脚本将文件上传到Google Drive。我可以使用Google应用脚本上传多个文件吗?

在.html文件我 -

<form id="myForm" action='#' method='post' enctype="multipart/form-data" > 

    <input type="file" name="filesToUpload[]" id="filesToUpload" multiple="" /> 

    <input type="submit" value="Upload File" 
      onclick="this.value='Uploading..'; 
      google.script.run.uploadFiles(this.parentNode)" id="upload-button"> 

在.GS文件我 -

function uploadFiles(form) { 
var file = form['filesToUpload[]']; 

(我已经部署Web应用程序使用此代码,不仅如此,课程代码)。

每当我在网络应用程序中上传多个文件时,变量 - '文件'只包含我上传的第一个文件。而不是所有的文件。 换句话说,fileUpload对象包含每次我已经尝试fileUpload-dictionary只包含一个文件。

文件上传类 - https://developers.google.com/apps-script/reference/ui/file-upload

我看了很多文件,我开始认为这是不可能的上传使用谷歌的多个文件Apps脚本(而在过程中的一个输入选择多个文件)。

任何人都知道这件事吗?

在此先感谢!

回答

2

我尝试了几件事,我同意这是不可能的。有一个不推荐使用的API方法getAllBlobs(),但即使我选择了多个文件,它也会返回一个仅包含第一个文件的单元素数组。

在客户端,沙箱模式(脚本在其中运行)似乎阻止fileInput.files属性工作:它始终未定义。

加上完全缺乏相关文档,它使得一个令人信服的结论是,截至2015年5月,Google脚本不允许多个文件上传。

相关问题