google-apps-script - 从 Google App Script 应用程序调用 Google Drive SDK

标签 google-apps-script google-drive-api google-docs-api

我一直在这里绕圈子,完全把自己弄糊涂了。我需要帮助。

我正在(试图)为客户编写一个概念上很简单的应用程序。他想要一个带有按钮的谷歌写文档。谷歌驱动器帐户有几个文件夹,每个文件夹都与几个人共享。当他在其中一个文件夹中放入一个新文件时,他希望能够打开这个写入文件,这个文件是他的电子邮件模板。他点击按钮,系统调用Google Drive SDK中的changes服务https://developers.google.com/drive/manage-changes , 获取自上次检查以来已添加的文件列表,然后拉出与该文件共享的人员列表,并使用写入文件作为模板向该人员列表发送一封电子邮件,说明他们的文件准备好了。

所以,很容易,对吧?

我首先查看了 Google App Script API 中的内置函数。我找到了这个方法,https://developers.google.com/apps-script/class_docslist#find在 DocsList 类中。问题是查询的描述只是说“查询字符串”。所以起初我尝试了 Drive SDK 查询参数,它们是

var files = DocsList.find("modifiedDate > 2012-12-20T12:00:00-08:00.");

它没有用。这让我相信这是对内容的简单全文搜索。这还不够好。

这导致我尝试从 App Script 应用程序中调用 Drive SDK 方法。太好了,我们需要 OLap 2 身份验证。很容易。在脚本引用中找到了对象并撞到了我的墙上。

客户端 ID 和客户端 key 。

你看,当我创建真正的服务帐户时,应用程序脚本中的 olap 控件不知道如何处理加密的 json 并将其来回传递。然后,当我尝试创建和使用已安装的应用程序 key 时,我收到身份验证错误,因为控件再次出现,不知道如何处理工作流程。最后,当我尝试创建 Web 应用程序 key 时,我不能,因为我没有站点主机名或重定向 URI。而且我无法使用应用程序 key 功能,因为我需要使用 OLap 2 文件。

我使用匿名 olap 有一段时间了,但是为了尝试弄清楚代码,我达到了每天匿名调用的限制,那是行不通的,因为这个人将在一天中不断按下这个按钮.

5个小时以来,我一直在 table 上敲打着我的头。我在这里需要一些帮助,谁能给我一个方向?

PS,是的,我知道我可以使用数据库控件并将整个文件列表加载到内存中,并将其与数据库中的文件列表进行比较。问题是,我们正在谈论数以万计的文件。馊主意。

最佳答案

我不会再使用 DocsList - DriveApp 应该是 more reliable replacement .某些命令已更改,因此不要使用查找,而是使用 searchFiles .这应该更有效(他们甚至使用像您这样的查询作为示例)。

关于google-apps-script - 从 Google App Script 应用程序调用 Google Drive SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14079132/

相关文章:

google-apps-script - 将单元格格式设置为 : minutes, 秒、毫秒

google-drive-api - 是否可以使用 google apps 脚本或 google drive api 创建新修订版?

python - 如何归档 'Invalid requests[0].updateTextStyle: At least one field must be listed in ' 字段'。 (使用 '*'表示所有字段。)">'

php - 是否可以使用 Google Docs API 将文本字符串转换为 PDF

javascript - 如何在 Apps 脚本中将对象参数传递给 PlusDomains.Circles.list

html - 防止表格单元格在将 html 转换为 pdf 时跨页中断

google-apps-script - 使用一个 Google 帐户开发时,工作区附加组件不会显示在 Google Sheet 中(对于其他帐户显示完全正常)

objective-c - 适用于 Node.js 或 Objective-C 的 Google Drive Realtime API SDK?

google-drive-api - 如何使用 HttpClient 库从 Google Drive 下载文件?

node.js - Node Google Docs REST API 批量更新无效 JSON 有效负载/缺少 documentId