gpt4 book ai didi

javascript - Google Drive API 导出 GAS 文件特定版本

转载 作者:行者123 更新时间:2023-12-04 17:53:14 24 4
gpt4 key购买 nike


我目前正在尝试对我们的 Google App Script 文件进行一些排序,并开发一个 HTMLService 应用程序,它可以在 Google Drive 中查找和解析 GAS 文件,并根据 jsdoc 样式注释生成 API 文档。

我有 WebApp 功能,可以提取我需要的所有数据并解析评论,但默认情况下它会导出当前 GAS 文件内容,无论它是否已发布。

我想做的是拉取最新保存版本的内容而不是当前的开发内容,有没有办法可以指定要导出的版本?

我正在使用 URLFetch() 获取内容,如下所示:

var params = {
headers:{
'Accept':'application/vnd.google-apps.script+json',
'Authorization':'Bearer '+ ScriptApp.getOAuthToken()
},
method:'get'
};

var fileDrive = Drive.Files.get(fileId);
var link = JSON.parse(fileDrive)['exportLinks']['application/vnd.google-apps.script+json'];
var fetched = UrlFetchApp.fetch(link, params);
return { meta: fileDrive, source: JSON.parse(fetched.getContentText()) };

如有任何帮助,我们将不胜感激,谢谢!

最佳答案

基于此documentation ,每个更改都称为“修订”,并且通过修订资源提供对修订的访问。您可以编程方式保存文件的新修订版或查询版本历史记录,如 Revisions reference 中所述.

Listing revisions

The following example demonstrates how to list the revisions for a given file. Note that some properties of revisions are only available for certain file types. For example, G Suite application files do not consume space in Google Drive and thus return a file size of 0.

function listRevisions(fileId) {
var revisions = Drive.Revisions.list(fileId);
if (revisions.items && revisions.items.length > 0) {
for (var i = 0; i < revisions.items.length; i++) {
var revision = revisions.items[i];
var date = new Date(revision.modifiedDate);
Logger.log('Date: %s, File size (bytes): %s', date.toLocaleString(),
revision.fileSize);
}
} else {
Logger.log('No revisions found.');
}
}

希望这对您有所帮助!

关于javascript - Google Drive API 导出 GAS 文件特定版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45033423/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com