TL;DR:有没有办法从 Google 脚本中的 Google 云端硬盘文件访问更改日志,或者有没有办法使用 JavaScript 函数抓取此信息?我只想要最近编辑的姓名以及他们进行编辑的时间。您可以在 Google 云端硬盘上查看此内容,但我找不到访问它的方法。
大家好,我在一家小公司工作,该公司将所有数据存储在共享的 Google 云端硬盘文件夹中。某些文件夹包含有值(value)的文件,管理层也希望跟踪其中的更改。
我正在尝试实现一个 Google 脚本,该脚本会在一周结束时发送一封电子邮件,通知管理层对文档所做的所有更改。
我目前的代码将遍历文件夹,并带有一个条件语句,如果文件在 7 天内被编辑,则运行该条件语句。我知道如何触发代码运行,以及如何在收集必要的信息后创建电子邮件。
function myFunction() {
var files = DriveApp.getFiles();
while (files.hasNext()) {
var file = files.next();
if (new Date() - file.getLastUpdated() < 7 * 24 * 60 * 60 * 1000){
//This is where I would log the necessary info
}
}
}
最佳答案
您确实可以使用 Drive API 访问修订历史记录(请下次在提问之前先查看文档,特别是考虑到 Google 为您提供了非常详细且易于浏览的文档)。
您可以使用revisions = Drive.Revisions.list('fileID')
获取所有修订版本。然后 revisions.items[i].lastModifyingUserName
或 revisions.items[i].lastModifyingUser.displayName
将为您提供用户名和 revisions.items[i]。 ModifiedDate
将为您提供日期。看起来从 [0]
到 [n]
修改日期会增加,因此您可能需要从 revisions.items.lenght
下降到0
一旦超过 1 周大就停止(尽管我不能保证,因为我所做的只是快速浏览一下)
关于javascript - 编写 Google 脚本来生成 Google Drive 的变更日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40518040/