You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中使用gargle连接Google Forms API并解决404错误?

Google Forms API调用404问题排查

问题背景

我正在用R开发集成googledrive和googlesheets4的Shiny应用,OAuth配置已完成且运行正常。现在需要为应用添加Google Forms自动化功能,希望沿用基于gargle的代码,目标是根据场景和用户更新表单问题。

在交互式环境测试时,按gargle文档下载Google Forms API发现文档并做了少量修改,编写了自定义请求生成函数my_request_generate,调用forms.forms.get接口获取表单数据时出现404错误:提示找不到URL,期望返回application/json却返回了text/html,且无论表单设为私有还是可链接编辑,错误均存在。

想知道问题出在哪?是否googledrive包未启用Forms API?

排查方向与解决办法

  • API发现文档配置错误:手动修改发现文档时可能破坏了接口的URL结构。Google Forms API的forms.get接口正确端点格式为https://forms.googleapis.com/v1/forms/{formId},检查修改后的发现文档中baseUrl和paths配置是否符合官方规范,重点确认路径参数占位符是否正确。
  • 未启用Google Forms API:googledrive包仅处理Drive相关操作,不会自动启用Forms API。需在Google Cloud Console的对应项目中手动启用Google Forms API,否则所有Forms请求都会被拒绝,表现为404或权限类错误。
  • 请求参数或格式错误:检查my_request_generate函数中传入的表单ID是否正确——不能直接传入表单共享链接,需提取链接中d/与/edit之间的字符串作为formId。同时确认请求使用GET方法,且请求头的Accept字段设置为application/json。
  • OAuth权限范围不足:当前OAuth令牌可能缺少Forms API的权限。需在OAuth配置中添加https://www.googleapis.com/auth/forms.body(用于编辑表单)或https://www.googleapis.com/auth/forms.readonly(仅读取)的权限,重新完成授权后再测试。

内容的提问来源于stack exchange,提问作者icurtis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 08:05:21