我无法在我的开放式社交小工具中使用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>
我正在apache shindig的默认samplecontainer中测试这个小工具。 我在谷歌浏览器测试,我在javascript控制台中收到以下错误
Access-Control-Allow-Origin不允许Origin http://127.0.0.1:8080。 未捕获错误:无法加载'dijit.Editor';最后一次尝试'../ dijit / Editor.js'
答案 0 :(得分:0)
从我所看到的,您获得了跨域权限错误。这意味着您无法加载编辑器dijit,因为dojo尝试使用Ajax加载它(并且Ajax无法访问其他域上的资源)。听起来很愚蠢,127.0.0.1:8080被认为是与localhost不同的域名:8080。
因此,请尝试从http://127.0.0.1:8080访问您的shindig服务器,而不是从http://localhost:8080访问您的shindig服务器。
如果有帮助,请告诉我。