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

调用Google Sheets API提示缺失有效API key,能否免登录访问公开表格

问题解答

逻辑问题说明

  • 你对Google Sheets API的凭证要求认知有误:即便目标表格设置为公开可查看,Google Sheets v4 API的所有调用请求都必须携带身份标识。OAuth2是用户授权读写数据时需要的凭证,公开只读场景下虽不需要用户登录、不需要配置OAuth2权限范围,但必须携带项目级的API密钥作为调用凭证,你当前的请求没有附加任何凭证,所以触发403权限错误。

免用户登录访问公开表格的实现方案

完全可以实现免用户登录访问,操作方法如下:

  1. 前往Google Cloud控制台创建项目,启用Google Sheets API,生成公开访问的API密钥
  2. 将API密钥作为key查询参数附加到请求URL末尾即可,修改后的代码示例:
if (message.action == 'clicked') {
    if (!connected){
        const API_KEY = '你生成的API密钥';
        var user = message.user;
        var range = 'Teachers!A:A';
        let fetch_url = `https://sheets.googleapis.com/v4/spreadsheets/${spreadsheetId}/values/${range}?key=${API_KEY}`;
        fetch(fetch_url)
            .then(res => res.json())
            .then(res => {
                console.log(res);
            })
    };
}

注意事项

  • 为避免API密钥被盗用,可在Google Cloud控制台的API密钥设置页,将密钥的调用来源限制为你的Chrome扩展ID
  • 该方案仅适用于公开可查看的表格,不需要用户做任何登录操作,也不需要申请OAuth2权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 20:06:03