借助 Apps Script API(以前称为 Apps Script Execution API),您可以在有权访问的脚本项目中远程执行函数。您的应用可以调用给定的 Apps Script 函数,并根据需要为其提供输入参数,然后接收返回的响应。
本页面上的示例说明了如何使用此 API 实现一些常见的执行操作。如需了解详情(包括特殊的授权要求),请参阅执行函数指南。
在这些示例中,占位符 scriptId 用于指示您应提供脚本项目 ID 的位置。请按照以下步骤查找脚本 ID:
- 在 Apps Script 项目中,点击左上角的项目设置图标 。
- 点击“脚本 ID”旁边的复制。
执行函数
以下 scripts.run 请求调用名为 listFolderContent
的 Apps 脚本函数,并将云端硬盘 folderId 和整数 MAX_SIZE
作为参数传递给该函数。该函数会在开发模式下执行,这意味着系统会执行最近一次保存的函数版本,无论部署为可执行文件的版本是什么。
请求协议如下所示。执行函数指南介绍了如何使用 Google API 客户端库以不同语言实现运行请求。
POST https://script.googleapis.com/v1/scripts/scriptId:run
{ "function": "listFolderContent", "parameters": [ folderId, MAX_SIZE ], "devMode": true }
调用的 Apps 脚本函数完成后,此请求的响应将包含执行结果或错误响应。在此示例中,该函数成功返回一个文件名数组:
{ "response": { "result": [ "fileTitle1", "fileTitle2", "fileTitle3" ] }, }
如果函数在执行 Apps 脚本期间遇到错误,响应可能如下所示:
{ "response": { "error": { "code": 3, "message": "ScriptError", "details": [{ "@type": "type.googleapis.com/google.apps.script.v1.ExecutionError", "errorMessage": "The script enountered an exeception it could not resolve.", "errorType": "ScriptError", "scriptStackTraceElements": [{ "function": "listFolderContent", "lineNumber": 14 }] }] } } }