【问题标题】:Adding a Topic ID to a Google Classroom assignment将主题 ID 添加到 Google 课堂作业
【发布时间】:2019-11-08 19:46:43
【问题描述】:

我正在尝试使用 Google Apps 脚本创建一个作业,并将其放在同样使用同一脚本创建的主题下。当没有指定 topicId 时,我创建作业没有问题,但是一旦我尝试指定 topicId ,我在运行脚本时收到以下错误:API call to chinese.courses.courseWork.create failed with错误:收到无效的 JSON 有效负载。未知名称“测试主题”

这是我的代码:

function makeStuff() {

  var topic = { 
    name: "Test Topic"
  };
  Classroom.Courses.Topics.create(topic, "46088716060");               

  var TWS1 =  {
    title: "Test Worksheet 1",
    state: "DRAFT",
    materials: [
      {
        driveFile:{
        driveFile: {
          id: "1REOs1RYtyVTX67VnJezjWf-wm7HqDVexeaeiQL3-HvM", 

        },
        shareMode: "STUDENT_COPY"
        }

      }
      ],
    workType: "ASSIGNMENT",
    topicId: {
    name: "Test Topic"
    }

  };

  Classroom.Courses.CourseWork.create(TWS1, "46088716060") 
}

是否可以通过名称引用topicId,或者将脚本中创建的topicId编号分配给可以引用的变量?

【问题讨论】:

    标签: google-apps-script google-classroom


    【解决方案1】:

    创建主题只需要提供一个名称(主题名称不是它的id,只有API可以生成id)。然后,Classroom API 创建主题,并将其作为对象返回,并在其上定义了 topicId 属性,如下所示;

    var courseId = "46088716060";
    var topicName = "Test Topic";
    
    var topic = Classroom.Courses.Topics.create({name:topicName}, courseId);
    var topicId = topic.topicId;
    
    

    然后在创建课程作业时使用 topicId

    【讨论】:

      猜你喜欢
      • 2018-06-08
      • 1970-01-01
      • 2020-10-27
      • 1970-01-01
      • 1970-01-01
      • 2020-10-06
      • 2020-08-11
      • 2020-11-11
      • 1970-01-01
      相关资源
      最近更新 更多