0

作为讲师用户,我必须调用哪些 Valence Learning Framework API 才能获取(仅)参加我的一门课程的所有学生的列表?

4

2 回答 2

1

获取参加 D2L LE 类组织单位的人员列表的主要方法有两种;您应该使用的正确调用主要取决于您正在使用的后端 LMS 的配置:

  • 获取 /d2l/api/le/{ver}/{orgUnitId}/classlist/

    这将检索在系统已配置为出现在班级中的组织单位中注册的所有用户;在某些组织中,这可能仅由学生组成,但最有可能的是,此呼叫将混合在教师、导师等以及学生中。因此,这可能适合您的需求,也可能不适合您的需求。

    您可以尝试结合这条路线来在课程中将学生与其他学生区分开来的一件事是专注于那些可评分的人;调用班级列表,然后为班级列表中的每个用户请求一个已知成绩项目的成绩值。如果用户是正在参与课程并被评分的学生或其他角色,您将从第二次通话中知道;不可评分的用户将没有与其注册相关联的成绩值。这将帮助您关注人员在课程中注册的各个方面,而不必关注他们注册角色的详细信息(某些组织将角色信息视为敏感信息)。

  • 获取 /d2l/api/lp/{ver}/enrollments/orgUnits/{orgUnitId}/users/?roleId={roleId}

    此调用将检索在组织单位中注册的所有用户,您可以按角色 ID 过滤检索到的列表(因此您只能按角色 ID 列出“学生”用户)。如果组织有不止一种学生角色,那么您需要知道这一点,以便您可以获取所有可能的学生角色。或者,您可以简单地在没有roleId查询参数的情况下进行调用,并在获取后根据您返回的嵌入角色信息过滤结果。

    但是,您的讲师用户可能没有进行此调用的正确权限;一些组织将此类注册信息调用的访问权限仅限于管理用户。

于 2013-05-27T18:02:07.583 回答
0

请注意,使用成绩对象方法来确定用户是否是学生,默认情况下只返回20 个项目。您可以通过在调用中指定 pageSize 参数来覆盖,但如果您没有适当的权限,您可能会遇到相同的权限问题。

http://docs.valence.desire2learn.com/res/grade.html#get--d2l-api-le-(version)-(orgUnitId)-grades-(gradeObjectId)-values-

于 2017-11-09T19:23:32.417 回答