Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script SpreadsheetApp.openByID突然出现权限问题_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script SpreadsheetApp.openByID突然出现权限问题

Google apps script SpreadsheetApp.openByID突然出现权限问题,google-apps-script,google-sheets,Google Apps Script,Google Sheets,代码应该从另一个电子表格复制一些数据,然后我对其进行操作 这段代码昨天就运行了,然后我今天尝试添加一个库,现在它仍然抛出这个错误,即使在删除库并将代码回滚到昨天的版本之后 错误消息: 您没有调用SpreadsheetApp.openById的权限。要求的 权限:第21行, 文件导入 代码: 我没有在任何一个文档中使用//@OnlyCurrentDoc,所以这不是我的问题 此项目的Google sheets API已打开,如从“资源”菜单中选中的 我尝试使用的库函数是一个简单的时间函数,与工作表无

代码应该从另一个电子表格复制一些数据,然后我对其进行操作

这段代码昨天就运行了,然后我今天尝试添加一个库,现在它仍然抛出这个错误,即使在删除库并将代码回滚到昨天的版本之后

错误消息:

您没有调用SpreadsheetApp.openById的权限。要求的 权限:第21行, 文件导入

代码:

我没有在任何一个文档中使用//@OnlyCurrentDoc,所以这不是我的问题

此项目的Google sheets API已打开,如从“资源”菜单中选中的

我尝试使用的库函数是一个简单的时间函数,与工作表无关,目前在我的项目中没有调用它,库已被分离。

可能的问题: 如果您的库包含//@OnlyCurrentDoc,并且您在添加库后获得了授权,则您的权限可能刚刚包含当前文档

如果显式设置了作用域,那么这些作用域可能没有包括https://www.googleapis.com/auth/spreadsheets

可能的解决方案: 如果仍要使用该库,请在主脚本中添加//@NotOnlyCurrentDoc并重新运行该函数。如果没有,请删除库并重新运行函数

删除清单中的显式作用域将触发正常授权流

如果所有其他操作都失败,请访问,找到您的项目并删除所有访问权限。现在,重新运行脚本中的任何函数都将触发正常的授权流

可能的问题: 如果您的库包含//@OnlyCurrentDoc,并且您在添加库后获得了授权,则您的权限可能刚刚包含当前文档

如果显式设置了作用域,那么这些作用域可能没有包括https://www.googleapis.com/auth/spreadsheets

可能的解决方案: 如果仍要使用该库,请在主脚本中添加//@NotOnlyCurrentDoc并重新运行该函数。如果没有,请删除库并重新运行函数

删除清单中的显式作用域将触发正常授权流

如果所有其他操作都失败,请访问,找到您的项目并删除所有访问权限。现在,重新运行脚本中的任何函数都将触发正常的授权流


清单文件是什么样子的?您可能需要重新授权权限。从代码编辑器中,从下拉列表中选择一个函数,然后运行该函数。如果代码缺少所需的授权,则应使用对话框提示您接受权限。如果已在appsscript.json文件中手动设置了范围,但打开电子表格的范围不存在,则不会提示您授权权限,并且该错误将永远持续。如果您在企业帐户(如GSuite)中,请确保域管理员没有阻止电子表格服务。您的清单文件是什么样子的?您可能需要重新授权权限。从代码编辑器中,从下拉列表中选择一个函数,然后运行该函数。如果代码缺少所需的授权,则应使用对话框提示您接受权限。如果已在appsscript.json文件中手动设置了范围,但打开电子表格的范围不存在,则不会提示您授权权限,并且该错误将永远持续。如果您使用的是企业帐户,如GSuite,请确保域管理员没有阻止电子表格服务。虽然库并不重要,但/NotOnlyCurrentDoc修复了我的问题//@不是现在的医生解决的。虽然我不明白正确的原因。请给我解释一下。虽然图书馆并不重要,但/NotOnlyCurrentDoc解决了我的问题//@不是现在的医生解决的。虽然我不明白正确的原因。请给我解释一下。
 data = SpreadsheetApp.openById('1-SyJRflR1YYYYDRo3e7xnDhYYYY6hIGDBKODl9XXXXX').getSheetByName("g1.1").getDataRange().getValues();