将 REST API 与表单服务进行比较

Google Forms API 和 Apps 脚本中的表单服务在功能方面存在一些重叠。 本指南介绍了它们之间的相似之处和不同之处,可帮助您确定哪种最适合您的项目。

支持的表单功能

REST API 和 Apps 脚本中的表单服务均支持对方不支持的表单功能。支持的功能的确切列表会随时间而变化。您可以浏览其余文档,了解特定功能是否受支持。

REST API 不支持以下功能:

  • 提交表单回答
  • 在 Pub/Sub 通知的正文中添加详细的表单或回答数据

Apps 脚本中的表单服务不支持以下功能:

  • 使用 Cloud Pub/Sub 订阅表单事件
  • 为非选择题类型设置正确答案

请求新的 REST API 功能

REST API 比 Apps 脚本中的 Forms 服务更新,并且会定期添加新功能。如果您希望优先实现某个功能,请提交功能请求

基于事件的行为

{apps_script_name_short} 触发器和 REST API 中的 forms.watches 资源都提供了一种在表单发生更改时采取行动的方式。

首选 REST API 的 forms.watches,用于:

  • 最高可靠性
  • 与 Cloud Pub/Sub 的互操作性
  • 表单被修改时的通知

建议使用 Apps 脚本触发器的情况:

  • 每条通知中包含的表单或回答数据
  • 基于时间的触发器

配额

Apps 脚本和 Forms API 的服务限制不同。

语言和环境

如果您喜欢使用 JavaScript 进行开发,Apps 脚本可以自动设置 Google Cloud 控制台项目和 OAuth 许可流程,从而节省您的时间。Apps 脚本还提供基于浏览器的代码编辑器,并在 Google 服务器上运行您的代码。

另一方面,REST API 除了 JavaScript 之外,还提供了多种语言的客户端库,让您可以自由选择自己喜欢的语言进行开发,而不受运行时或并发执行方面的限制

通过 Apps 脚本使用 REST API

如果您偏好使用 Apps 脚本开发环境,但又想使用 Google 表单 REST API 功能,可以使用 UrlFetchApp 来实现。如需了解详情,请参阅设置 Apps 脚本项目

表单 REST API 尚无法作为 Apps 脚本高级服务使用。如果您希望支持此功能,请提交功能请求

后续步骤