Javascript 错误:";拒绝访问受限制的URI“;

Javascript 错误:";拒绝访问受限制的URI“;,javascript,html,xml,firefox,firebug,Javascript,Html,Xml,Firefox,Firebug,对受限URI的访问被拒绝“代码:”1012[在此错误上中断] xhttp.send(空) 我正在尝试使用JavaScript从XML文件中获取数据。我正在使用Firebug在Firefox上进行测试和调试 上面的错误就是我得到的。在我以前用过的其他地方也能用,为什么这里的行为很奇怪 有人能告诉我为什么会这样吗 更新: 我发现这个链接解释了问题的原因。但是我不明白给出的解决方案意味着什么,有人能详细说明吗?没有代码是不可能的,但是你可能会违反跨站点ajax限制:你不能向其他域发出ajax请求。听

对受限URI的访问被拒绝“代码:”1012[在此错误上中断]

xhttp.send(空)

我正在尝试使用JavaScript从XML文件中获取数据。我正在使用Firebug在Firefox上进行测试和调试

上面的错误就是我得到的。在我以前用过的其他地方也能用,为什么这里的行为很奇怪

有人能告诉我为什么会这样吗

更新:


我发现这个链接解释了问题的原因。但是我不明白给出的解决方案意味着什么,有人能详细说明吗?

没有代码是不可能的,但是你可能会违反跨站点ajax限制:你不能向其他域发出ajax请求。

听起来你好像在打破这个限制


子域、不同的端口、不同的协议被视为不同的域。

尝试将
访问控制允许源代码:
头添加到为您提供XML的服务器端脚本。如果不在PHP中执行此操作(您可以使用
header()
)并尝试读取原始XML文件,则可能必须通过添加
header set Access Control Allow Origin“*”
在.htaccess文件中设置头。此外,您可能需要添加
访问控制允许标题:


另外,我建议在生产模式中替换*以禁止所有人阅读您的数据,而是在其中添加您自己的url。

另一个可能的原因是您直接在文件系统上使用.html文件。例如,如果您在浏览器中使用此url访问它:
C:/Users/Someguy/Desktop/MyProject/index.html


如果必须发出ajax请求,ajax请求将失败,因为对文件系统的ajax请求受到限制。要解决此问题,请设置一个Web服务器,将localhost指向
C:/Users/Someguy/Desktop/MyProject
,并从
http://localhost/index.html

您尚未发布任何代码,因此很难说出原因。执行ajax的URL是什么?使用ajax获取的URL是什么?我个人会尝试在StackOverflow和Google上搜索错误消息。我还有另一个javascript调用相同的函数来做一些工作。这可能是原因吗?@user749069查看帮助以了解如何发布代码,这不是
标记您缺少最重要的细节。什么是
xml\u文件
以及页面的url是什么样子?>“我还建议在生产模式中替换*以禁止所有人读取您的数据,而是在那里添加您自己的url。”请注意,这对于客户端来说是完全可选的,只有浏览器才尊重这一点。它不会阻止任何人读取您的数据。
function getXML(xml_file) {
  
  if (window.XMLHttpRequest) {
    
    var xhttp = new XMLHttpRequest();  // Cretes a instantce of XMLHttpRequest object
  }
  else {
    
    var xhttp = new ActiveXObject("Microsoft.XMLHTTP");  // for IE 5/6
  }
  
  xhttp.open("GET",xml_file,false);  
  xhttp.send(null);  
  
   var xmlDoc = xhttp.responseXML; 
 
   return (xmlDoc);
}