用 google 应用程序脚本完成的任何事情都可以用 google API 完成吗?

Can anything done with google apps scripts be done with the google API?

我注意到 Google Apps 脚本编辑器使用 Bearer 令牌来请求很多东西,这让我开始思考:是否可以执行 [=24] 完成的所有功能=] 应用程序脚本与 google API 在你自己的服务器上?本质区别是什么? google 应用程序脚本在 google 服务器上运行,而使用 google API 您需要创建自己的服务器吗?

比如很多文档功能,我原以为只有API才能做到,原来可以在这里找到https://developers.google.com/docs/api/reference/rest/v1/documents/request#InsertInlineImageRequest

那么本质区别是什么?

Just the fact that google apps script runs on google servers, while with the google API you would need to create your own servers?

是的。两种方式各有优势:

API:

  • 该休息了API。您可以在您的服务器中使用您自己的语言(例如:Python)。
  • api更具包容性。有些东西可以用 api 完成,但不能用应用程序脚本完成。
  • 用户可以设置有限的使用范围API。
    • 例如,在驱动器 API 处,https://www.googleapis.com/auth/drive.file 可用于驱动器 API。使用 DriveApp 的应用程序脚本无法做到这一点。
  • API 的处理成本低于 Google Apps Script1 2
  • 的内置方法

应用程序脚本:

  • 您这边没有服务器
  • 触发器。您可以将函数设置为 运行 onEdit、onOpen 或特定时间。
  • 与 Google 应用深度集成:Sidebars/modal 对话框只能使用应用脚本完成。
  • api 的所有方法都可以通过不记名令牌间接访问。
  • Authorization/authentication 由应用程序脚本处理。您不需要设置 oauth。