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 的服务限制不同。
- 详细了解 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 脚本高级服务使用。如果您希望支持此功能,请提交功能请求。