需要帮助来实现Tincan Javascript API

时间:2017-07-14 18:13:54

标签: javascript api tin-can-api

我正在研究tincan JavaScript API。我的数据格式是完全变化的问题,TinCan已经指定了为什么要传递数据和调用。帮我调整我的TinCan Api格式的数据。以下是我打电话的示例数据。

var data = { " groupId":" groupId", " groupName":" gNameEncrypt", " tutorNames":" tutorNames", " actorNames":" actorNames", " otherNames":" otherNames" };

当前我做的只是解码这些数据并像这样发送。

var actionList = new TinCan(
    {
    recordStores: [{
                       endpoint: "http://example.com",
                       username: username,
                       password: password,
                       allowFail: false
                  }]
});

                var action = new TinCan.Agent({
                    "name": "insert"
                });

                actionList.getStatements({
                    'params': {
                        'agent': action,
                        'verb': {
                            'id': $.base64.encode(data)
                        }
                    },
                    'callback': function (err, data) {
                        console.info(data.more);
                        var urlref = "http://<?php echo $_SERVER['SERVER_NAME'] . ":" . $_SERVER['SERVER_PORT'] . $uriParts[0] . "?" ?>t=" + data.more.TutorToken;
                        window.location.href = urlref;
                    }
                });
                crypt.finish();
            });

1 个答案:

答案 0 :(得分:0)

这里有两个部分,1)需要将数据转换为xAPI(以前的Tin Can)格式,以及2)代码本身。

1)我认为你需要再看一下xAPI的使用方法。数据存储在JSON&#34; Statement&#34;具有3个必需属性和各种其他可选属性的对象。这些属性通常包含非常可扩展的复杂对象。很难说你已经展示了你真正想要捕捉的东西以及最好的方法。我建议阅读一些有关xAPI语句格式的资料。 http://experienceapi.com/statements-101/是一个很好的起点,并且http://experienceapi.com/statements/继续对所有可能性进行至少一些报道。

2)您列出的代码试图根据两个参数获取已存储的语句,而不是尝试存储语句。这两个参数是&#34; agent&#34;和&#34;动词&#34;。在这种情况下,由于我们不知道data包含什么,我们无法说出动词应该是什么,我怀疑这不是一个有意义的动词。意图是声明的行动。说完&#34;演员&#34;值action是值得怀疑的,因为这听起来更像是一个&#34;动词&#34;应该包含。将声明作为#1的一部分正确应该明确如何检索这些声明。至于存储这些语句,如果您使用TinCan接口对象,则需要使用该对象的sendStatement方法。但是不再推荐使用此界面,建议的做法是构造TinCan.LRS对象并直接与其进行交互,在这种情况下,您将使用saveStatement方法。我建议看看&#34;基本用法&#34;项目主页的部分:http://rusticisoftware.github.io/TinCanJS/有关详细信息,请参阅API文档:http://rusticisoftware.github.io/TinCanJS/doc/api/latest/