如何授权Google Sheets Apps Script访问表格数据?解决脚本执行时的授权拦截问题
解决Google Apps Script访问表格时的授权拦截问题
我之前也碰到过一模一样的情况——明明是自己账号下的脚本和表格,调用getActiveSpreadsheet()时却被Google拦下来了。这其实是Google的安全机制默认限制了未验证的脚本访问敏感权限,按下面的步骤就能搞定:
步骤1:进入Google账号的安全设置
- 打开你的Google账号主页,找到左侧导航栏的安全选项
- 往下翻找到第三方应用访问你的Google Account这一栏,点击管理第三方应用访问
步骤2:信任你的Apps Script项目
- 在应用列表里,找到你创建的那个脚本项目(要么显示你给脚本起的名字,要么就是"Google Apps Script")
- 点进去之后,选择信任或者允许访问(不同界面措辞可能有点不一样,找类似的选项就行)
步骤3:重新运行脚本完成授权
- 回到脚本编辑器,再次运行你的代码:
var sss = SpreadsheetApp; var ss = sss.getActiveSpreadsheet(); - 这次授权时会看到"这个应用未经过Google验证"的提示,别慌,点击提示里的高级,然后选转到[你的脚本项目名](不安全)
- 跟着提示走完授权流程就ok了
备选方案:直接在脚本编辑器里处理
如果在安全设置里找不到你的脚本项目,也可以直接在编辑器里操作:
- 点击右上角的部署按钮,选测试部署
- 在弹出的窗口选最新版本,点测试
- 同样会触发授权流程,遇到安全提示时选高级选项继续授权就行
要是你经常用自己写的脚本,也可以考虑把脚本提交Google验证,但个人日常用的话,上面的步骤完全够用,不用折腾验证那一套。
内容的提问来源于stack exchange,提问作者Muhammad Siddiqui
相关产品推荐
相关产品推荐

