我正在尝试创建一个可以下载并通过启动其索引文件在本地运行的网站.
所有文件都是本地的,没有资源在线使用.
当我尝试使用jQuery的AJAXSLT插件来处理带有XSL模板的XML文件时(在子目录中),我收到以下错误:
XMLHttpRequest cannot load file:///C:/path/to/XSL%20Website/data/home.xml. Origin null is not allowed by Access-Control-Allow-Origin.
XMLHttpRequest cannot load file:///C:/path/to/XSL%20Website/assets/xsl/main.xsl. Origin null is not allowed by Access-Control-Allow-Origin.
发出请求的索引文件是file:///C:/path/to/XSL%20Website/index.html在存储使用的JavaScript文件时file:///C:/path/to/XSL%20Website/assets/js/.
我该怎么做才能解决这个问题?
我想制作一个关于HTML/JS 同源政策的社区维基,希望能帮助任何人搜索这个主题.这是SO上搜索次数最多的主题之一,没有统一的wiki,所以我去:)
相同的源策略可防止从一个源加载的文档或脚本从另一个源获取或设置文档的属性.此政策可以追溯到Netscape Navigator 2.0.
请保持示例详细,最好还链接您的来源.
我想提供一个Javascript代码,它可以在任何包含它的网站上运行,但它总是需要在托管Javascript的服务器上获取更多数据(甚至修改数据).我知道出于明显的原因存在安全限制.
考虑在xyz.com上托管的index.html,其中包含以下内容:
<script type="text/javascript" src="http://abc.com/some.js"></script>
Run Code Online (Sandbox Code Playgroud)
some.js是否能够使用XMLHttpRequest将数据发布到abc.com?换句话说,abc.com是否被隐含信任,因为我们从那里加载了Javascript?