升级R 4.2.1后执行sheet_write()遇gs4_auth()凭证获取错误
R升级至4.2.1后googlesheets4认证错误解决方案
重置gargle认证缓存
执行以下命令清除旧的缓存凭据,之后重新触发授权流程:gargle::gargle_oauth_cache_delete() gs4_auth(email = "你的邮箱地址")完成浏览器授权后,再尝试运行
sheet_write()。更新依赖包至最新版
R版本升级后,部分旧版包可能存在兼容性问题,执行命令升级相关依赖:update.packages(c("googlesheets4", "gargle", "httr"))升级完成后重启R会话,再进行认证操作。
手动指定认证缓存目录
若默认缓存路径出现问题,可创建新的缓存目录并指定使用:dir.create(".oauth_cache", showWarnings = FALSE) gs4_auth(email = "你的邮箱地址", cache = ".oauth_cache")检查并清理干扰性环境变量
查看是否存在禁用认证的环境变量:Sys.getenv("GARGLE_NO_AUTH") Sys.getenv("HTTR_NO_AUTH")若返回值为"true",执行以下命令取消设置:
Sys.unsetenv("GARGLE_NO_AUTH") Sys.unsetenv("HTTR_NO_AUTH")尝试服务账号认证(备选方案)
如果交互式授权始终失败,可使用Google服务账号进行认证:- 在Google Cloud控制台创建服务账号并下载JSON密钥文件
- 将目标Google Sheet共享给服务账号邮箱(赋予编辑权限)
- 执行命令完成认证:
gs4_auth(path = "你的密钥文件路径.json")
内容的提问来源于stack exchange,提问作者Chris Wiese
相关产品推荐
相关产品推荐

