为什么我在同一目录中本地所有文件都出现同源策略错误?

时间:2018-03-03 17:45:39

标签: javascript html

我有一个主html文件,它通过iframe在同一目录中加载另一个html文件。主页上有一个按钮,用于定位iframe中的html文件。它使用这个功能:

    <script>
function myFunction() {
    var x = document.getElementsByTagName("iframe")[0].contentWindow;
    x.exportRoot.gotoAndPlay(2);
}
</script>

实时工作就像预期的那样:当我点击按钮时,它会从iframe中启动Animate CC动画。当我在本地查看文件时,我在控制台窗口中收到此错误消息:

SecurityError(DOM Exception 18):阻止了一个包含origin&#34; null&#34;从访问带有原点&#34; null&#34;的框架。协议,域和端口必须匹配。

我读过这与同源政策有关。如果主页面在另一个域中作为iframe页面,这将是有意义的。但是这两个html文件都位于同一目录中。

我的浏览器(尝试使用Safari和Chrome)仍然将其视为两个不同的域名?有什么我可以改变,以使其在本地工作?

1 个答案:

答案 0 :(得分:0)

在本地做dev,你应该使用一个简单的Web服务器。设置不到2分钟。这里有一堆

What is a faster alternative to Python's http.server (or SimpleHTTPServer)?

不要在您的浏览器中禁用网络安全性。一次忘记点击,您的机器可能拥有。即使您认为风险很低,为什么在使用简单的Web服务器这么简单的方法时会冒任何风险呢?