从xAPI包中获取xAPI语句

时间:2019-05-09 14:51:29

标签: tin-can-api xapi

我正在努力弄清Rise编写的xAPI软件包的工作原理,该软件包已提供给我,因此我可以构建一个测试PoC应用程序。

我可以看到index.html页面中内置的功能,并且生成了诸如进度和测验分数之类的东西,但是我在哪里可以找到软件包中LRS的终点?

我已将软件包合并到我构建的测试应用程序中,但我不想自己生成和发送语句,而是要使用软件包中附带的内容。

如果我在SCORM Cloud中导入并播放该程序包,则会返回生成的语句。

我唯一能看到的是tincan.js文件this.recordStores=[]中的一个条目,除此之外,我不确定下一步要去哪里,有什么建议吗?

1 个答案:

答案 0 :(得分:0)

通常,此类软件包实现了随该规范的0.9版本一起发布的一组准则(当时名为Tin Can API,后来又更改为xAPI)。那些guidelines提供了Rise已实现的打包和启动机制。启动机制指示端点和身份验证凭据将在查询字符串上传递到启动的内容,在这里它可以检索它们。 Rise使用的TinCanJS库实现了消化查询字符串和设置对象的功能,这些对象是您在this.recordStores中找到的对象,用于与查询字符串参数中标识的xAPI LRS通信。

您有两个主要选择,

  1. 直接从启动URL获取查询字符串参数,然后 自己处理,可能使用相同的全局库对象 (TinCan.LRS)已经可以用来获取LRS对象,您可以 然后与您进行互动,
  2. 通过软件包本身已经准备好的this.recordStores列表利用已经为您创建的对象

两种方法都有优点/缺点,它们在很大程度上取决于您对JavaScript的熟悉程度以及您需要/想要的灵活性。