dojotoolkit:XMLHttpRequest无法加载文件

时间:2014-08-06 11:51:01

标签: javascript dojo filesystems xmlhttprequest

我在使用dojotoolkit开发一个软件时遇到了问题(我必须使用的版本是1.8.1版本29801)。 这里有点背景。该软件是一个C#.Net应用程序,其中webbrowser控件显示一些网页,这些网页分别位于用户文件系统和文件服务器上。 到目前为止,我使用模拟网络服务器的netbeans调试了软件。 现在我试着用我的应用程序打开它,最终得到了令人不愉快的结果,它没有起作用。我试图用Chrome和Internet Explorer打开它并收到相同的结果。 我将问题划分为一行。

<script type="text/javascript" src="dojotoolkit20/dojo/dojo.js" data-dojo-config="parseOnLoad: true, useXDomain: true"></script>

我认为useXDomain就足够了,但似乎我在这方面错了。

整个我的html文件中的

现在看起来像这样:

<html lang="de">
    <head>
        <title>DojoTest</title>
        <script type="text/javascript" src="dojotoolkit20/dojo/dojo.js" data-dojo-config="parseOnLoad: true, useXDomain: true"></script>

    </head>
    <body>
    </body>
</html>

Internet Explorer向我显示错误发生在dojo.js

    req.getText = function(url, async, onLoad){
        var xhr = getXhr();
        xhr.open('GET', fixupUrl(url), false); //Here it says Access denied(url: "dojotoolkit20/dojo/parser.js")

谷歌浏览器报告:

XMLHttpRequest cannot load file:///E:/HTML/public_html/dojotoolkit20/dojo/parser.js. Cross origin requests are only supported for HTTP. /E:/HTML/public_html/index.html:1
Uncaught NetworkError: Failed to execute 'send' on 'XMLHttpRequest': Failed to load 'file:///E:/HTML/public_html/dojotoolkit20/dojo/parser.js'. 

有什么办法可以完成文件的加载吗?安装网络服务器不是我的用户的选择;) 提前谢谢。

1 个答案:

答案 0 :(得分:2)

我无法解释其原因,但这是解决此问题的方法。

改变这个:

<script type="text/javascript" src="dojotoolkit20/dojo/dojo.js" data-dojo-config="parseOnLoad: true, useXDomain: true"></script>

到此:

<script type="text/javascript" src="dojotoolkit20/dojo/dojo.js" data-dojo-config="parseOnLoad: true, async:true, useXDomain: true"></script>

async:true似乎解决了这个问题。

现在我没有收到错误消息,而且打开的很好。我仍然有dojo数据网格的一些问题,但让我们看看我是否可以解决这个问题。

感谢他们给我很多帮助的所有评论。