我的代码不再起作用了,但是我没有更改它 答案:解决步骤:参考文献:

问题描述

我几个月前创建了一个脚本来发布我在Google教室中学生的作业。代码如下

await ctx.send(f"{random.choice(messages).content}")

我在其中放置XXXXXXXXXXX的地方是课程ID。 该脚本将附加到包含标题,作者和youtube链接的3列电子表格中,并且分配是作为链接附加到资料的这些视频之一。该脚本应该每天上午9:00在3个YouTube视频中的3种不同的材料中发布,并在电子表格的列表中排行

当我尝试执行称为pubblicavideo的功能时,

GoogleJsonResponseException:Chiamata API教室.courses.courseWork.create非合法错误:'course_work.description'(TYPE_STRING)的值无效,883(riga 69,文件“ Codice”)

我认为英语翻译类似

GoogleJsonResponseException:对课堂.courses.courseWork.create的API调用无法正常工作并出现错误:“ course_work.description”(TYPE_STRING)的值无效,883(第69行,文件代码”)

这个脚本在8月13日之前运行良好。我不知道Google课堂脚本是否有任何更改。

任何人都知道如何使其重新工作吗?

解决方法

答案:

问题似乎在于,在某些时候,从autorini.getCell(k,1).getValue()获得的值的类型不是引起错误的字符串。

解决步骤:

pubblicavideo()中,在传递了变量pubblica()的循环内调用函数contarighe。对于每次运行k,此值将放入pubblica中。

这些是有问题的行:

var autorini = foglio.getRange("A709:A3014");
var cello = autorini.getCell(k,1);
var autore = cello.getValue();

autore发出请求之前,您需要检查Classroom.Courses.CourseWork.create()的值。

As per the documentationCourseWork资源上,description的值应为String类型。

在创建课程作业对象时:

var courseWork = {
    'title': titolo,'description': autore,'materials': [
      {'link': { "url": link}}    
    ],'workType': 'ASSIGNMENT','state': 'PUBLISHED',}

autore的值必须反映这一点。确保在循环中的任何位置停止代码,工作表的值都是String类型,并且可以正确检索。

我希望这对您有帮助!

参考文献:

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...