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

GCP云函数调用Google Admin Directory SDK users.watch报projection参数异常

解决Google Directory API watch方法参数报错的问题

我之前遇到过几乎一模一样的情况!你的云函数运行18个月后突然抛出TypeError: Got an unexpected keyword argument "projection",核心原因大概率是你使用的google-api-python-client版本过于老旧。

问题分析

从报错路径里能看到你当前用的是1.7.8版本的客户端库,这是2019年左右的旧版本。虽然Google官方文档明确标注users.watch方法支持projection参数,但旧版本的客户端库生成的方法签名并没有包含这个参数——要么是当时的API还没引入该参数,要么是旧客户端依赖的发现文档没有同步到最新的API定义。

而且Google会定期更新API的发现文档,旧版本客户端依赖的旧文档可能被移除或更新,导致原本正常的代码突然出现参数不识别的报错。

解决建议

按以下步骤操作即可解决:

  • 升级客户端库到最新稳定版:
    在你的云函数依赖环境中执行升级命令:
    pip install --upgrade google-api-python-client
    
    升级后,新版本客户端会加载最新的API发现文档,projection参数就能被正确识别了。
  • 确认缓存配置:
    你代码里已经设置了cache_discovery=False,这能避免旧发现文档缓存的干扰,升级后保留这个配置即可。
  • 快速验证参数值:
    虽然这不是报错的直接原因,但可以再核对projection的参数值是否符合要求(可选值为basic、full或custom),确保参数本身没有语法问题。

其他用户情况

是的,不少开发者都遇到过类似的“突然报错”问题——运行了数月甚至更久的代码突然因为参数不合法报错,几乎都是因为旧版本的Google API客户端库无法适配API的后端更新。社区里的通用解决方案都是优先升级客户端库版本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 00:12:30