使用Google Apps脚本我已设法使用以下代码创建作业:
Classroom.Courses.CourseWork.create({
"courseId": id,
"title" : title,
"description" : desc,
"workType" : 'ASSIGNMENT',
}, id)
这样可以正常工作,在课堂上创建一个草稿。但是,当我尝试附加像这样的驱动器文件时:
Classroom.Courses.CourseWork.create({
"courseId": id,
"title" : title,
"description" : desc,
"workType" : 'ASSIGNMENT',
"materials" : [
{
"driveFile": {
"id" : fileId,
"title" : fileTitle,
"alternateLink" : fileLink,
"thumbnailUrl" : fileThumbnail,
},
"shareMode" : 'STUDENT_COPY',
}
],
}, id)
我收到这些错误:
执行失败:收到无效的JSON有效负载。 'course_work.materials [0]'中的未知名称“share_mode”:找不到字段。
收到无效的JSON有效负载。 'course_work.materials [0] .drive_file'中的未知名称“alternate_link”:找不到字段。
收到无效的JSON有效负载。 'course_work.materials [0] .drive_file'中的未知名称“id”:找不到字段。
收到无效的JSON有效负载。 'course_work.materials [0] .drive_file'中的未知名称“title”:找不到字段。
收到无效的JSON有效负载。 'course_work.materials [0] .drive_file'中的未知名称“thumbnail_url”:找不到字段。 (第61行,文件“课堂”)[1.187秒总运行时间]
我们将不胜感激,谢谢
答案 0 :(得分:1)
您可以参考此SO answer。由于请求格式错误,可能会发生此错误。
示例代码:
function myFunction() { var ClassSource = { title: "Test File", state: "DRAFT", materials: [ { driveFile:{ driveFile: { id: "fileID", title: "Sample Document" }, shareMode: "STUDENT_COPY" } } ], workType: "ASSIGNMENT" }; Classroom.Courses.CourseWork.create(ClassSource, COURSEID) //Logger.log(exec); }
您可以使用Try this API尝试此操作。
希望这有帮助!