请求的运作方式

本页面简要介绍了 Google Classroom API 中的请求运作方式。旨在帮助尚不熟悉面向资源的设计或 Google Workspace API 的读者。

如需查看具体的代码示例,请参阅相应的 API 指南,例如创建和管理课程创建和管理作业

面向资源的设计

API 资源中所述,Classroom API 遵循面向资源的设计模式。大多数资源都有用于执行标准操作(例如创建、读取、更新和删除资源实例)的方法。

例如,可以使用该 API create()patch()get()list()delete() Course Google 课堂。

创建

如需创建新资源(例如 Course),请针对相应资源调用 create() 方法。

Create() 调用始终需要将相应资源的初始关键详细信息作为输入。例如,如需创建 Course,请对 Course 资源调用 create() 方法,并在请求中指定 namedescription,以及 room 等可选信息。

对于子资源(有时称为子级资源),还需要父级资源的标识符。例如,在 Course 内创建 CourseWork 时,需要 Course id 来确定 CourseWork 所属的 Course

Create() 方法会在 API 调用响应中返回新创建的资源的实例。返回的资源通常包含任何其他服务器生成的字段,例如资源 idcreationTime

修补

如需修改现有资源,请对相应资源调用 patch() 方法(有时称为 update())。patch() 方法与 create() 几乎完全相同,但存在两个关键区别;调用 patch() 方法时,您必须指定:

  1. 要修改的资源的 id
  2. 一个字段列表(称为 updateMask),用于确定要更新资源中的哪些字段。如果存在一组默认字段或字段是推断出来的,则此参数为可选参数。

Patch() 方法会在 API 调用响应中返回更新后资源的完整实例,其中包含所有已完成的更改。

获取和列出

您可以使用两种方法来检索资源:get()list()

get() 方法通过某个标识符检索特定资源。例如,根据 idalias 获取 Courseget() 调用会直接返回完整资源。

list() 方法可在单个请求中检索多个相同类型的资源,而无需提供各个资源标识符。通常,list() 操作会获取某个父资源的所有子资源,例如检索 Course 中的所有 CourseWork。与进行多次 get() 调用相比,这有助于最大限度地减少请求,并且在您不知道所需资源的 id 时尤其有用。

一般来说,list() 方法在单次调用中可返回的资源数量存在上限,并且可以通过在调用中包含 pageSize 值来配置下限。如果资源数量超过限制,list() 方法支持分页;返回的每个结果“页面”都会提供一个 pageToken,该令牌可包含在后续的 list() 调用中,以提取下一批资源。

删除

delete() 方法接受资源标识符(例如 id),并删除相应的资源。如果 delete() 成功,则返回一个空响应。

其他运算

并非所有可通过 Classroom API 实现的操作都可以通过上述标准操作实现,例如修改 CourseWork 资源的受让人。在这些情况下,您可以使用自定义方法,例如 modifyAssignees 方法。这些方法的行为是定制的,您应单独查阅其文档。