无法在apache shindig容器中的opensocial小工具中使用dojo小部件

时间:2011-01-14 10:25:05

标签: dojo apache-shindig

我无法在我的开放式社交小工具中使用dojo小部件。这是我遵循的步骤 1.我在本地机器中使用tomcat 6.0.29中的apache shinding。 Tomcat在默认端口8080上运行。 这是小工具xml
                           

  </ModulePrefs>
  <Content type="html">
    <![CDATA[
 <link rel="stylesheet" ....type="text/css"/>
 <script type="text/javascript" src="path/to/local/dojo.js"></script>
    <script>
    function loader () {
        dojo.require ("dijit.Editor");
        dojo.addOnLoad(callback);
    }

    function callback () {
        new dijit.Editor ({}, dojo.byId("editorNode"));
    }

    dojo.config.parseOnLoad = true;
    dojo.config.dojoBlankHtmlUrl = '/blank.html';
    dojo.addOnLoad(loader);
</script>
<div id="editorNode" class="tundra">Hello, xcc world!</div>

    ]]>
  </Content>
</Module>
  1. 我正在apache shindig的默认samplecontainer中测试这个小工具。 我在谷歌浏览器测试,我在javascript控制台中收到以下错误

    Access-Control-Allow-Origin不允许

    Origin http://127.0.0.1:8080。 未捕获错误:无法加载'dijit.Editor';最后一次尝试'../ dijit / Editor.js'

1 个答案:

答案 0 :(得分:0)

从我所看到的,您获得了跨域权限错误。这意味着您无法加载编辑器dijit,因为dojo尝试使用Ajax加载它(并且Ajax无法访问其他域上的资源)。听起来很愚蠢,127.0.0.1:8080被认为是与localhost不同的域名:8080。

因此,请尝试从http://127.0.0.1:8080访问您的shindig服务器,而不是从http://localhost:8080访问您的shindig服务器。

如果有帮助,请告诉我。