Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从Desire2Learn导出成绩?_Java_Desire2learn - Fatal编程技术网

Java 如何从Desire2Learn导出成绩?

Java 如何从Desire2Learn导出成绩?,java,desire2learn,Java,Desire2learn,学校的应用程序开发人员(使用Java)如何从D2L实例导出成绩 如果我正在构建一个D2L Valence应用程序,它需要使用一个实用程序帐户(如所述的方法:)来导出一系列等级: 如何一次性配置appid和AppKey 如何一次性配置用户id和用户密钥 我需要什么样的REST调用才能真正获取班级列表并导出成绩 关于公用事业账户: 我会试着使用讲师上下文,这样你就不必强制执行角色。但如果您使用公用事业账户: 关于AppID和AppKey的一次性配置: 按照以下步骤从keytool请求钥匙: 后续工作

学校的应用程序开发人员(使用Java)如何从D2L实例导出成绩

如果我正在构建一个D2L Valence应用程序,它需要使用一个实用程序帐户(如所述的方法:)来导出一系列等级:

如何一次性配置appid和AppKey

如何一次性配置用户id和用户密钥


我需要什么样的REST调用才能真正获取班级列表并导出成绩

关于公用事业账户:

我会试着使用讲师上下文,这样你就不必强制执行角色。但如果您使用公用事业账户:

关于AppID和AppKey的一次性配置:

  • 按照以下步骤从keytool请求钥匙:
  • 后续工作将从该工具返回到Desire2Learn,并与您所在机构的经批准的联系人联系,以确保密钥已启用
  • 启用后,您可以将这些键直接编译到java代码或资源文件(或db)中。它们在java库中的几个地方使用,允许您在Desire2Learn中打开或关闭单个应用程序 关于公用事业帐户userid和userkey的一次性配置:

    将安装程序转换为安装程序可能是最容易的:

  • 示例中使用的auth库可以仅用于对您自己的实例进行身份验证(而不是提示输入主机名)。这将生成一个身份验证url,如“https://my.host.name/d2l/auth/api/token?x_a=......应将其设置为“选择实用程序帐户以运行此应用程序”的步骤
  • 调整index.jsp中的java示例,并更改将userid和userkey保存到会话的行:

    setAttribute(“userID”,userContext.getUserId())

    setAttribute(“userKey”,userContext.getUserKey())

    并将其保存到数据库中

  • 配置应用程序时,请运行此应用程序并使用您想要使用的实用程序帐户登录到D2L。登录完成后,将运行index.jsp代码并保存密钥
  • 这些键在java库中使用,并向LMS证明调用是在什么用户上下文中进行的 关于获取课程列表和课程分数:

  • 对于所有调用,我将使用名为ID2LUserContext的操作,在文档中记录的路径中传递
  • 获取讲师的组织单元(包括课程)
  • 此呼叫的请求示例:

    GET
    https://valence.desire2learn.com/d2l/api/lp/1.0/enrollments/users/3667/orgUnits/?x_b=JgqB2bumFwQkWft-gUP8Qr&x_a=L2Hd9WvDTcyiyu5n2AEgpg&x_d=XeTMX5fliLPTJdtKqeE_a0esDmTriSC9Aq9sMtpoO00&x_c=2AhFhrwhv1RsIdshAMba0upiux7Bhz-znS-VqjXhQh8&x_t=1333565539
    HTTP/1.1 Accept-Encoding: gzip,deflate User-Agent: Jakarta
    Commons-HttpClient/3.1 Host: valence.desire2learn.com
    
    (值x_a、x_b、x_c、x_d和x_t用于身份验证,如果使用客户端库,则会自动添加)

    3.此电话最终将包含以下内容:

    以下是原始的回答:

    HTTP/1.1 200 OK
    Cache-Control: no-cache, no-store
    Pragma: no-cache
    Content-Length: 17300
    Content-Type: application/json; charset=UTF-8
    Expires: -1
    Server: Microsoft-IIS/6.0
    X-Powered-By: ASP.NET
    X-AspNet-Version: 2.0.50727
    Date: Wed, 04 Apr 2012 18:52:08 GMT
    
    {"PagingInfo":{"Bookmark":"6789","HasMoreItems":true},"Items":[
    
    <SNIP/>
    
    {
             "OrgUnit":          {
                "Id": 6789,
                "Type":             {
                   "Id": 3,
                   "Code": "Course Offering",
                   "Name": "Course Offering"
                },
                "Name": "In",
                "Code": "dSCL_101_ONGOING_01"
             },
             "Role":          {
                "Id": 71,
                "Code": null,
                "Name": "Instructor Role"
             }
          }    
    
    <SNIP/>
    
    HTTP/1.1200正常
    缓存控制:无缓存,无存储
    Pragma:没有缓存
    内容长度:17300
    内容类型:application/json;字符集=UTF-8
    过期:-1
    服务器:Microsoft IIS/6.0
    X-Powered-By:ASP.NET
    X-AspNet-Version:2.0.50727
    日期:2012年4月4日星期三18:52:08 GMT
    {“pagininfo”:{“Bookmark”:“6789”,“HasMoreItems”:true},“Items”:[
    {
    “组织单位”:{
    “Id”:6789,
    “类型”:{
    “Id”:3,
    “代码”:“课程设置”,
    “名称”:“课程设置”
    },
    “名称”:“在”,
    “代码”:“dSCL\U 101\U 01”
    },
    “作用”:{
    “Id”:71,
    “代码”:空,
    “名称”:“讲师角色”
    }
    }    
    
    4.OrgUnitInfo结构中的ID可用于通过


    有关如何将文档资源转换为工作调用的背景信息,您需要查看。

    当您使用公用事业帐户时,您需要选中“角色”,以确保他们所处的角色应该能够查看等级。