【发布时间】:2013-11-21 04:34:10
【问题描述】:
我在一些可能可以补救的事情上遇到困难。我正在开发一个没有服务器的网站。这样做时,我在尝试通过 XMLHttpRequest 访问文件时遇到了问题。
正如您在示例代码 sn-p 中看到的,我创建了变量,使用所需文件的相对路径打开它,然后使用发送函数。
当我使用必须遍历父目录的相对路径时,send() 函数失败。但是,如果我提供的路径要么与网页位于同一目录中,要么在当前网页目录的子文件夹中转发,我会看到 XMLHttpRequest 成功返回。在这些成功案例中,我可以在request.responseText中看到测试文件的数据。
对此的任何帮助将不胜感激。
我现在唯一的线索是可能存在阻止遍历父目录的“获取”请求的安全威胁。
谢谢。
代码片段:
function test(){
var request = new XMLHttpRequest();
request.open('GET', "../test.txt", true);
request.send();//FAILS HERE
//Get Response
var response = request.responseText;
}
function test2(){
var request = new XMLHttpRequest();
request.open('GET', "test.txt", true);
request.send();
//Get Response
var response = request.responseText; //SUCCESSFUL
}
【问题讨论】:
-
为什么不安装像 Apache/IIS 这样的本地服务器?这将解决您的问题。从安全角度来看,浏览器可能不允许这样做
标签: javascript html xmlhttprequest