我正在使用 Google 应用程序脚本开发一个网络应用程序,用户可以在其中搜索和打开其驱动器中的文件。现在我用这个循环显示文件:
var files = DriveApp.searchFiles('title contains "banana"');
var fileCount = 0;
while (files.hasNext()) {
var file = files.next();
app.getElementById('displayFilesPanel').add(app.createAnchor(file.getName() + ' - ' + file.getOwner().getEmail(), file.getUrl()));
fileCount++;
}
这里的问题是 getOwner() 方法需要相当长的时间(大约 0.1 秒),加起来相当快。另一件事是这些代表文件的链接看起来不太好。
有什么方法可以使用 DriveApp.searchFiles() 进行这些搜索并使用锚点/链接以外的其他内容显示结果?
编辑: 正如 Zig Mandel 和 Serge insas 提到的,应该考虑 HTML-Service 让它看起来更好。我发现 DriveApp.searchFiles 函数不是很有用,因为当我将它与“标题包含“香蕉”之类的参数一起使用时,它不会在 5 分钟超时限制内完成。问题是它找到了大约 40 个匹配项,但随后继续并可能检查了我驱动器中的所有其他 (>120000) 文件。就我而言,我使用 getAllFilesForPaging(number, token)-function 并使用 .indexOf('banana') != -1-method 检查每个文件的标题是否包含“banana”。