Google apps script 为Google课堂脚本添加作用域会删除SpreadsheetApp的权限
在一个连接到电子表格的脚本中,我循环浏览电子表格的行,并通过调用Google apps script 为Google课堂脚本添加作用域会删除SpreadsheetApp的权限,google-apps-script,google-classroom,Google Apps Script,Google Classroom,在一个连接到电子表格的脚本中,我循环浏览电子表格的行,并通过调用classk.Courses.coursework.create(ClassSource,courseId) 我已经考了很多次了,今天我试着把这一年的每周作业改成我自己开设的课程。我在第十次加法时出错了。我假设这是一个超时问题,所以我添加了一个sleep语句。没有任何效果,所以我试着从一个新的脚本开始 如果我只是输入代码来访问电子表格 var sheet = SpreadsheetApp.getActiveSheet();
classk.Courses.coursework.create(ClassSource,courseId)
我已经考了很多次了,今天我试着把这一年的每周作业改成我自己开设的课程。我在第十次加法时出错了。我假设这是一个超时问题,所以我添加了一个sleep
语句。没有任何效果,所以我试着从一个新的脚本开始
如果我只是输入代码来访问电子表格
var sheet = SpreadsheetApp.getActiveSheet();
var rangeSS = sheet.getDataRange()
var data = sheet.getDataRange().getValues();
授权没有问题,但是对教室的调用不起作用
然后我加上
"oauthScopes": [
"https://www.googleapis.com/auth/classroom.coursework.students.readonly",
"https://www.googleapis.com/auth/classroom.courses.readonly"
],
在查看->显示清单文件下
奇怪的是,在这一点上,我得到了一个错误:
您没有调用getActiveSheet的权限
我通过资源->高级谷歌服务启用了工作表
。
我已经通过脚本仪表板启用了教室
和工作表
我在Opera和Chrome上都试过几次,有时还启用了GoogleDrive
似乎什么都不管用。想知道是否有其他人见过这个问题
function myFunction() {
var weekday = new Array("Sunday", "Monday","Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" );
var sheet = SpreadsheetApp.getActiveSheet();
var rangeSS = sheet.getDataRange()
var data = sheet.getDataRange().getValues();
for (var i = 1; i < data.length; i++) {
// set up ClassSource from data in the spreadsheet row
Classroom.Courses.CourseWork.create(ClassSource, courseId)
...
函数myFunction(){
var weekday=新数组(“星期日”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”);
var sheet=SpreadsheetApp.getActiveSheet();
var ranges=sheet.getDataRange()
var data=sheet.getDataRange().getValues();
对于(变量i=1;i
如果您在清单文件中明确定义了oauthScopes
,这些就是使用的作用域。不会添加自动作用域-否则您将无法减少到所需的最小作用域,因为应用程序脚本的自动作用域将添加尽可能多的许可作用域。请注意,Sheets advanced service仅在启用Sheets REST API的客户端库-这与通过SpreadsheetApp
访问的电子表格服务不同。它不提供或授予任何oauth作用域。相关(不完全重复):将appsscript.json文件更改回原始状态,然后保存。单击“文件”菜单和“项目属性”菜单项。单击“作用域”选项卡。复制作用域。将这些作用域与要使用的其他作用域一起添加到清单文件,然后保存清单文件。感谢帮助。我更改了清单文件正如您所建议的,现在脚本运行。我返回到“遇到内部错误”(第147行,文件代码)。第147行是对.class.Courses.CourseWork.create(ClassSource,courseId)的调用