5

为了解决这个问题,我们在美国各地都有我们的 LMS 服务器和内容服务器,因此用户可以从最近的位置获取他们的内容。

当前情景

我遇到了一个使用 SCO-Fetcher 的解决方案,在下面这两个链接中提到并在下面进行了说明,但我找不到任何关于如何实现类似解决方案的信息。

这里:http ://elearningrandomwalk.blogspot.com/2006/08/sco-fetcher.html

在这里: http: //www.adlnet.gov/Technologies/scorm/SCORMSDocuments/SCORM%20Resources/ADL_CrossDomainScripting_1_0.pdf

解决方案

如果有人对此有任何想法或信息,将不胜感激。

4

2 回答 2

2

我为一个必须与许多不同的 LMS 交互的内容提供商工作,并且跨域一直是一个痛苦的问题。

尽管您链接到的文档,SCORM 根本不适合跨域。我在跨域方面的经验一直违反AICC标准。过去我们使用签名的 java 小程序来执行跨域通信,但目前我们使用的是一个隐藏的flash * SWF 文件,我们通过 javascript 与之交谈。这要求 LMS 在其 Web 服务器上安装一个 crossdomain.xml 文件以允许通信,我们的一些客户对此感到犹豫。

* 我们的产品已经大量使用闪存,所以这对我们来说不是一个繁重的要求。

我们现在认真考虑的解决方案是跨域脚本文档第 4.8 节中建议的“Content Server 上的运行时服务”的变体。

内容服务器将自己运行课件,就好像它是一个 LMS,并将所有 API 调用代理到真正的 LMS。下图显示了通信路径:

在此处输入图像描述

此外,您的启动 URL 不会直接指向内容(例如,http://abc.com/content/sco.html),而是指向内容服务器上的软件应用程序(例如,http://abc.com/access.php?content=sco.html&permissions=OAUTH_ID),然后它会像 LMS 本身一样提供内容。


另外,刚刚看到这篇关于跨域通信的文章,虽然不是 SCORM 特定的,但可能会为实现提供一些替代想法。

于 2011-06-29T03:05:25.810 回答
1

我知道这是一个老问题,但我想我会分享:几年前我遇到过类似的情况,并决定使用iframe hack来绕过跨域限制。它只需要一点 JavaScript 和 HTML。它适用于较旧的浏览器,包括 IE6。

Chuck,你最后用了什么解决方案?

于 2011-09-29T02:30:57.973 回答