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

Google Forms API传入有效Access Token仍返回401错误求助

解决Google Forms API调用401未授权问题

核心排查点及解决方案:

  • 你用的不是Access Token,是授权码
    你提到的Token格式4/0AVHEtk6Kalxxxxxx是OAuth2的授权码(Authorization Code),不是真正的Access Token。真正的Access Token格式为ya29.xxxxxxxxxxxx开头的长字符串。
    前端Google登录完成后,需要从认证响应中提取access_token字段,而不是code字段。如果是后端处理授权流程,需要用这个授权码向Google的token端点请求换取Access Token。

  • 验证权限范围是否正确
    确认你请求的OAuth权限范围包含https://www.googleapis.com/auth/forms.responses.readonly(只读响应)或https://www.googleapis.com/auth/forms.responses(读写响应)。如果权限范围不对,即使Token有效也无法访问Forms API。

  • 检查Token有效性
    把你认为正确的Token放到https://oauth2.googleapis.com/tokeninfo?access_token=你的Token接口验证:

    • 查看expires_in字段确认Token是否过期
    • 查看scope字段确认是否包含Forms相关权限
    • 查看email字段确认是当前登录用户的邮箱
  • 核对请求头格式
    确保请求头的Authorization格式完全正确:Bearer 后面跟一个空格,再加上完整的Access Token,不要有多余的空格、换行或特殊字符。你的代码里格式看起来没问题,但要确认key变量存的是正确的Access Token,不是授权码。

  • 确认表单响应权限
    登录用户不仅要有表单的查看权限,还要在表单的「设置」-「响应」中开启允许该用户查看响应的权限,否则即使账号有权限,API也会返回未授权。

  • 检查Google Cloud项目配置
    确保你启用Forms API的Cloud项目,和你用来做OAuth登录的Client ID属于同一个项目;测试模式下,确认你确实被添加为测试用户,且Client ID的类型(Web/Android/iOS)和你的应用类型匹配。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 16:47:13