XMLHttpRequest对象想要打开一个文件夹。

时间:2017-03-30 15:47:34

标签: javascript ajax

我有一个XMLHttpRequest对象试图访问其文件夹之外的文件。

W3Schools说:出于安全原因,现代浏览器不允许跨域访问。

这意味着网页和它尝试加载的XML文件必须位于同一台服务器上。

所以,我的文件在同一台服务器上。只是在一个不同的目录(文件夹。)它不是在读取文件。这有解决方法吗?

当.xml文件位于同一文件夹中时,javascript文件可以正常工作。但是,我想从文件夹外部访问它 - 一个目录。我使用语法../来表示它位于一个文件中。它似乎无法访问它......

1与位于同一文件夹中的myFile.xml完美配合。

2似乎无法在文件夹所在的目录中找到myFile.xml。

使用直接路径不起作用。

1。)xmlhttp.open(" GET"," myFile.xml",true);

2。)xmlhttp.open(" GET"," ../ myFile.xml",true);

[编辑 - 更新]解决了。有用。正是如此。我将文件从桌面文件夹移到主机服务器上。我仍然不知道为什么会有与桌面环境不同的结果...但是,我很高兴知道我正在编码它。

1 个答案:

答案 0 :(得分:0)

  

我正在我的桌面上,在桌面上的文件夹中工作。

大多数浏览器都禁止XMLHttpRequest完全访问文件:URI。

Firefox允许使用certain restrictions访问:

  

只有当原始文件的父目录是目标文件的祖先目录时,文件才能读取另一个文件。

由于您尝试阅读的文件位于上面的目录,其中包含您尝试访问该文档的HTML文档,因此权限被拒绝。

为避免此限制,请勿尝试在没有HTTP的情况下使用XMLHttpRequest。