Rest 创建指向Google文档最后命名版本的PDF链接

Rest 创建指向Google文档最后命名版本的PDF链接,rest,url,google-api,google-docs,google-docs-api,Rest,Url,Google Api,Google Docs,Google Docs Api,我有一个实时文档,可以在我的网站上下载(一个设备手册)。我希望能够在用户看不到这些微小更改的情况下进行更改,因此认为使用命名版本是理想的。但我找不到链接到最新命名版本的方法 我相信我可以使用谷歌脚本创建第二个文档,并在每次命名版本时复制到其中,但我认为应该有一种更简单的方法 我当前使用的URL的格式如下 https://docs.google.com/document/d/{Document ID}/export?format=pdf 只要我不更改文档,这就可以正常工作 有什么想法吗 谢谢 学

我有一个实时文档,可以在我的网站上下载(一个设备手册)。我希望能够在用户看不到这些微小更改的情况下进行更改,因此认为使用命名版本是理想的。但我找不到链接到最新命名版本的方法

我相信我可以使用谷歌脚本创建第二个文档,并在每次命名版本时复制到其中,但我认为应该有一种更简单的方法

我当前使用的URL的格式如下

https://docs.google.com/document/d/{Document ID}/export?format=pdf
只要我不更改文档,这就可以正常工作

有什么想法吗

谢谢

学生回答: 不幸的是,无法使用G套件API检索命名版本的名称

更多信息: Docs API本身没有允许访问修订的方法,而驱动器API有,但没有名称的资源表示形式,因此无法通过名称本身识别修订

解决方法: 如果您需要的版本是最新版本,则可以使用驱动器API
Revisions:list
方法检索最新版本,并从资源响应的
exportLinks
属性获取指向该版本的导出链接:

函数getExportLink(){ var fileId=“”; var revisions=Drive.revisions.list(fileId); var latestRevision=修订版.items[(修订版.items.length-1)]; 变量url=”https://docs.google.com/feeds/download/documents/export/Export?id="; var revision=“&revision=“+latestRevision.id; var format=“&exportFormat=pdf”; 返回url+fileId+revision+format; } 注意:您必须使用Advanced Drive Service v2从应用程序脚本中获取修订-要激活此脚本,请导航到
Resources>Advanced Google Services…
,然后单击
Drive API
旁边的开关,使其显示
on
并变为绿色

我希望这对你有帮助

参考资料:

这非常接近,但驱动器文件的权限似乎与文档不匹配。此链接:{Docs ID}&revision=13&exportFormat=pdf对外部用户不起作用,而此链接:{Docs ID}/export?format=pdf在设置权限的情况下可以正常工作。我尝试添加此行:DriveApp.getFileById(fileId).setSharing(DriveApp.Access.any_与_链接,DriveApp.Permission.VIEW);但是没有运气。