Google Sheets API调用返回404错误,结构合规仍无法访问如何解决?
Google Sheets API 404报错解决方案
核心错误原因
你目前调用API时用了发布到Web生成的别名ID(2PACX开头),没有使用表格本身的原始ID,同时你使用的/feeds/list/格式的接口属于已关停的旧版API,两个问题叠加导致404报错。
具体问题说明
- 两类ID的区别
表格的原始ID可以从可编辑链接中提取,你的原始ID为:1vrzchTHVwwzc9wgFGmtc_zBsh27CEtE7KOyeNDuLwC0。2PACX开头的ID是谷歌发布到Web后生成的页面别名,仅用于访问发布后的静态HTML页面,所有API接口都不识别该ID。 - 旧版API已关停
你使用的spreadsheets.google.com/feeds/格式的接口属于旧版GData Sheets API,谷歌已于2021年完全停止该接口的服务,即使替换为正确的原始ID,请求也会返回404。
可行解决方案
方案1:使用官方最新Sheets v4 API调用
- 请求基础格式:
https://sheets.googleapis.com/v4/spreadsheets/{原始表格ID}/values/{数据范围}
示例:要获取第一个工作表的全部内容,可将数据范围设为Sheet1,完整请求为https://sheets.googleapis.com/v4/spreadsheets/1vrzchTHVwwzc9wgFGmtc_zBsh27CEtE7KOyeNDuLwC0/values/Sheet1?key=你的API密钥 - 前置配置要求:
- 表格共享权限保持「知道链接的所有人均可查看」即可
- 提前在Google Cloud控制台启用Sheets API,并创建API密钥,调用时携带密钥参数
方案2:无密钥公开数据获取(无需API配置)
如果仅需要获取公开表格的结构化数据,不需要编辑权限,可以直接使用公开CSV导出接口:
- 请求格式:
https://docs.google.com/spreadsheets/d/{原始表格ID}/gviz/tq?tqx=out:csv&sheet={工作表名称}
该接口无需携带API密钥,只要表格公开可查看即可正常返回CSV格式数据。
内容的提问来源于stack exchange,提问作者georgina lopez
相关产品推荐
相关产品推荐

