1

大约 2 个月前,我为 D2L 申请了“App Developer Key”。我的大学很快就会迁移到 D2L,他们已经设置好了。

所以,我申请了“域限制”版本。现在,当我检查系统“是否已批准?” 字段为“True”,这意味着,我认为,我应该能够使用它。我更新了 D2L 的示例“入门”C# 项目中的 Host、AppId、AppKey、UserId、UserKey 字段(它使用默认值)。但是当我运行它时,我得到一个错误:

远程服务器返回错误:(403) Forbidden。

当我检查详细信息时,错误是RESULT_INVALID_SIG. 并且,“当签名或 id 无效时,通常这应该触发重新身份验证”返回这种类型的错误。所以你怎么看?这是因为我的角色是学生而不是管理员吗?或者这是关于 AppId 和 AppKey 的?

4

1 回答 1

1

这可能是因为您为示例的UserIdUserKey字段提供了值,而这些令牌不适合您拥有的主机+AppID/密钥对。

尝试使用您拥有的 App 凭据填写 LMS 的主机字段、App ID 和 Key 字段,然后查看您是否可以通过这种方式获取示例:

  • 您应该能够在根本没有用户凭据的情况下进行“获取版本”调用(因为您可以匿名进行该调用。

  • 要检索与您的应用程序 + AppID/密钥对匹配的用户凭据,只需提供主机和应用程序凭据,然后“验证”——身份验证过程应生成用户 ID/密钥对并填充这些字段——然后您可以缓存所有这些凭据值,并将它们与相同的应用程序/LMS 组合一起使用(只要您的用户令牌不会过期)。

于 2012-11-22T18:59:34.037 回答