Google Forms API 和 Apps 脚本上的 Google 表单服务可以执行的操作有一些重叠。本指南介绍了这两种方法的异同,可帮助您确定哪种方法最适合您的项目。
支持的表单功能
REST API 和 Apps Script 上的 Google 表单服务都支持对方不支持的 Google 表单功能。由于受支持功能的确切列表会随时间而变化,因此请参阅文档的其余部分,了解特定功能目前是否受支持。
不过,某些功能可能永远不会受支持,如下所述。
REST API 不打算支持以下内容:
- 提交表单回复
- 在 Pub/Sub 通知正文中添加详细的表单或回复数据
Apps 脚本上的 Google 表单服务不打算支持以下功能:
- 使用 Cloud Pub/Sub 订阅表单事件
- 为非单选题类型设置正确答案
请求新的 REST API 功能
REST API 比 Google Apps 脚本中的 Google 表单服务更新,并且会定期添加新功能。如果您希望我们优先考虑某项功能,请提交功能请求。
基于事件的行为
{apps_script_name_short} 触发器和 REST API 中的 forms.watches
资源都可以在表单发生变化时执行操作。
以下情况应优先使用 REST API 的 forms.watches
:
- 最高可靠性
- 与 Cloud Pub/Sub 的互操作性
- 表单被修改时的通知
以下情况应优先使用 Apps 脚本触发器:
- 每个通知附带的表单或回复数据
- 基于时间的触发器
配额
Apps Script 和 Google 表单 API 具有不同的服务限制。
- 详细了解 Apps 脚本配额
- 详细了解 Google 表单 API 使用限制
语言和环境
如果您更喜欢使用 JavaScript 进行开发,Apps 脚本可以自动设置 Cloud 控制台项目和 OAuth 意见征求流程,从而为您节省时间。Apps 脚本还提供基于浏览器的代码编辑器,并在 Google 服务器上运行您的代码。
另一方面,除了 JavaScript 之外,REST API 还提供多种语言的客户端库,让您可以使用自己选择的语言进行开发,而不受运行时或同时执行限制。
通过 Apps Script 使用 REST API
如果您更喜欢使用 Apps Script 开发环境,但想使用 Google 表单 REST API 功能,可以使用 UrlFetchApp
来实现。如需了解详情,请参阅设置 Apps 脚本项目。
Google 表单 REST API 尚未作为 Apps Script 高级服务提供。如果您希望我们支持该功能,请提交功能请求。