我想澄清一下跨域AJAX在其背后的机制方面意味着什么。
比如说,我有一个网站http://www.example.com
。该网站包含一个javascript文件,该文件包含几个基于jQuery的标准AJAX调用(例如$.post()
,$.get()
等),位于http://www.example.com/js/script.js
。
现在,我有另一个网站http://www.helloworld.com
,其中包含以下内容;
<script type="text/javascript" src="http://www.example.com/js/script.js"></script>
http://www.example.com/js/script.js
内向http://www.example.com
提出请求的AJAX请求是否会被视为“跨域”,因此当文件包含在http://www.internet.com
时会出现兼容性问题?
任何答案都会很棒!
答案 0 :(得分:3)
JS在客户端执行,因此文件源所在的位置无关紧要,它将从地址栏中的域执行。
答案 1 :(得分:1)
为了能够包含来自另一个域的javascript,为JS提供服务的服务器需要为文件提供正确的头文件。 特别是头文件需要为需要跨域JS的域设置Access-Control-Allow-Origin。
仅出于测试目的,您可能希望使用参数--allow-file-access-from-files运行Chrome,并且不会停止跨源请求。